摘要 星际文件系统是一种点对点的分布式文件系统, 旨在连接所有有相同的文件系统的计算机设备.在某些方面, IPFS类似于web, 但web 是中心化的,而IPFS是一个单一的Bittorrent 群集, 用git 仓库分布式存储.换句话说, IPFS 提供了高吞吐量的内容寻址块存储模型, 具有内容寻址的超链接.这形成了一个广义的Merkle DAG 数据结构,可以用这个数据结构构建版本文件系统,区块链,甚至是永久性网站..IPFS 结合了分布式哈希表, 带有激励机制的块交换和自我认证命名空间.I…
官方项目地址:The Apache log4net project 本文内容仅为相关项参考,不进行具体使用讨论 另转载请注明出处 Log4net快速索引参考 Log4net主要有以下三个部件: loggers -- 记录器:开发者通过它来写日志 appenders -- 输出位置/目标控制器:通过它控制日志需要记录在哪些地方 layouts -- 输出格式控制器:通过它控制日志的输出格式或内容 注意事项:在使用配置文件(App.config)处理log4net时,需要在AssemblyInfo.…
Log4j快速使用精简版 1.导入log4j-1.2.17.jar包 2.在src根目录下创建log4j.properties文件 log4j.rootLogger=INFO, CONSOLE, FILE ## console 配置文件输出的目的地 (控制台)log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppenderlog4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayoutlog4j…
上一篇文章虽然实现了ListView 快速索引的效果,但是有一个小小的Bug.这个Bug我在前面也说了,这篇文章就来解决这个Bug. 我研究的时候发现只要showBg值为true,中间的字母就显示,而当showBg 的值为false的时候中间的字母就可以消失.只要SlideBar的状态为ACTION_DOWN和ACTION_MOVE 的时候showBg的值为true,而ACTION_UP的时候showBg的值就为false: 所以根据上面这个特征,我们只要把OnToucheLetterChang…
ListView A~Z快速索引这种效果在通信录和城市列表中经常看到,方便用户查找,是一种增加用户体验的好方法. 实现步骤: 1.自定义一个名叫SlideBar 的View. 2.在布局文件中加入这个自定义的View. 3. 在Activity中处理监听事件. 接下来讲讲我是怎样实现的: 先来看SlideBar这个类: package com.folyd.tuan.view; import android.content.Context; import android.graphics.Canv…
快速索引 (对View的自定义) 快速索引应用场景: 微信好友列表, 联系人通讯录, 应用管理, 文件管理等. 快速索引7步曲: *1. A-Z索引的绘制. * 2. 处理Touch事件. * 3. 提供使用监听\回调 * 4. 汉字转换成拼音. * 5. 进行排序展示. * 6. 进行分组. * 7. 将自定义控件和ListView合体. 1.A-Z索引的绘制 protected void onDraw(Canvas canvas) { for (int i = 0; i < LETTERS.…
实现这样的效果 布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools…
效果图: 布局去指定 view.custom.shangguigucustomview.MyCustomIndexView 自定义View对象 <!-- 自定义联系人快速索引 --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layo…
原文地址:http://www.infoq.com/cn/news/2017/09/How-versioning-API 如何版本化API需要考虑各种实际业务场景,但是一个完备的API应该是: 和客户端交互的约定.API需要确保稳定性,预先定义各种可能返回状态,包括各种异常.客户端无需考虑约定之外的情况. 向下兼容.在API没有变化的时候,API实现的更新和升级,都应该确保原有客户端请求不出现问题. RESTful.API设计应该能够遵照RESTful风格,通过URI来表示资源,通过HTTP G…
概述 分支版本化技术是有别于传统的SDE版本化技术,它用于支持WebGIS模式下的多用户长事务编辑. 优势功能 使用分支版本化技术将获得以下功能 1. 支持长事务的编辑. 2. 支持Undo和Redo操作. 3. 平台提供原生的冲突监测.版本合并和协调冲突功能. 4. 支持编辑Utility network数据集. 5. 记录每个增删改动作的操作用户名. 6. 无需像传统版本化技术那样,定期压缩版本来提高访问性能. 特征 分支版本化技术有以下几个特征: 基于ArcGIS Enterprise系统…
最近需要实现一个城市列表的快速索引功能.类似于联系人应用,根据姓名首字母快速索引功能. 要实现这个功能只需要解决两个问题:1.对列表进行分组(具有同一特征),并且能够快速定位到该组的第一项 2.右侧分组‘特征’快速索引栏的实现第一个问题比较好解决,列表项可以根据相同的‘特征’来分组,比如说城市列表可以根据相同首字母的城市名来进行分组. 如何来定位到分组的第一项,只需要把分组的‘特征’和分组第一项下标关联起来,快速索引栏就能快速定位分组第一项第二个问题可以通过自定义控件来实现,实现的形式有很多,可…
Overview 在前面的文章里有针对 abp 的项目模板进行简化,构建了一个精简的项目模板,在使用过程中,因为我们暴露的 api 需要包含版本信息,我们采取的方式是将 api 的版本号包含在资源的 URI 中.因为 abp 默认的 api 是没有版本的概念的,所以这里为了实现 api 版本化需要针对 abp 项目的 api 路由进行改造,从而满足我们的需求.本篇文章则是实现这一改造过程的演示说明,希望可以对你有所帮助 完整的项目模板如下所示 模板源码地址:https://github.com/…
[持续更新]一篇今年年头的老文章顺道发布了,大家有任何问题可以留言沟通.当时刚刚加入团团,愿大家有机会还是购买一台MAC,确实能给大家的效率赋能,虽然在一开始会有一些艰难!⛽️ 望借着换工作的东风,好好的俊一波IDEA,之前始终习惯于Eclipse的使用. 使用事项 界面 IntelliJ IDEA 默认界面是隐藏掉 Toolbar 和 Tool Buttons,在View菜单中点选.注意通过Window->Save Current Layout避免每次都需要重新设置界面. 注意整体主题和编辑主…
3D相关开发 [direct-X] 1.direct-X最小框架 [OpenGL] 1.环境搭建及最小系统 [OpenGL] 2.企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [51单片机] 1602液晶显示控制代码 [51单片机] 1602液晶显示控制代码2 [51单片机] 定时器1 [51单片机] 定时器2-计数示例 [51单片机] 定时器3-计时示例 [51单片机] 中断1-中断整体介绍 [51单片机] TFT2.4彩屏1 [文字显示 画矩形] [51单片机] TFT…
导读:在MySQL5.6之前版本,Innodb表的许多DDL操作是非常昂贵.许多ALTER TABLE操作的原理是通过创建新的空表,定义被要求的表选项和索引,然后逐行拷贝已存在记录到新表,在插入行时更新索引.在旧表所有行被拷贝完,旧表被删除和那新表被重命名为旧的表名.MySQL5.5,和MySQL5.1 有了InnoDB Plugin,优化了CREATE INDEX和DROP INDEX 避免表的拷贝行为.这个特性被称为Fast index Creation.MySQL 5.6 加强ALTER…
跟随公司变更技术堆栈的步伐,开始学习相应工具IntelliJ的使用,之前一个大神同时也提到,最近该IDE的市场份额已然超越了免费的Eclipse,因此该工具已经到了必须会的程度了. 新年快乐,鸡年大吉!JBe a great java programmer. 随着使用的深入,内容会持续更新. 由于现在的java项目基本上都是通过maven管理jar包的maven应用,所以首先需要的就是熟悉maven的配置. 一图胜千言吧,一定主要注意的是,给maven建立好良好的结构,便于管理使用.对于不同的远…
"问题:众所周知772002很喜欢马尾,所以他决定画几幅马尾送给他的女朋友. 772002会画m种马尾,772002还有n张纸,n张纸分别编号1到n,每张纸上只能画一种马尾. 然而772002的女朋友只喜欢其中t种马尾.并且772002的女朋友只喜欢偶数(因为这象征着成对成双). 772002想知道有多少种画法,使得n张纸画满并且自己女朋友喜欢的那t种马尾每种个数都恰好为偶数. 然而772002陪女朋友看电影去了,所以他把这个问题交给了你,你能解决吗? m≤10,t≤m,n≤1000000000…
假如我们有一个叫shiny的项目,它是由一个程序Shiny-Server 和一个数据库 Shiny-DB组成的; 简单结构图如下: 但是很多时候,现实开发团队是这样的: 我们的项目shiny项目的运行环境是有多套的, 我们擅长解决代码层面的问题. 版本控制工具git非常普遍而且好用 我们有持续集成和持续构建的工具 我们很好的定义了测试和生产环境的发布流程 但是我们的数据库的版本如何控制呢? 当前现状 非常不幸的是我们还不能很好的处理数据库的版本管理问题, 很多的项目依赖运维人员手动的执行SQL脚…
Xamarin作为微软提供的移动服务多系统开发平台,成为很多开发者首选的应用开发平台.AppGallery Connect(以下简称AGC)也在逐步的支持Xamarin的SDK.认证服务也是支持Xamarin平台的服务之一,今天就教大家如何在Xamarin里快速集成认证服务的手机号码认证. 安装Xamarin环境 Xamarin的御用开发平台是Visual Studio,所以我们需要首先安装Visual Studio 2019. 下载地址:https://visualstudio.microso…
Xamarin 作为微软提供的移动服务多系统开发平台,成为很多开发者首选的应用开发平台.AppGallery Connect(以下简称 AGC)也在逐步的支持 Xamarin 的 SDK.认证服务也是支持 Xamarin 平台的服务之一,今天就教大家如何在 Xamarin 里快速集成认证服务的邮箱地址认证. 1. 安装 Xamarin 环境 Xamarin 的御用开发平台是 Visual Studio,所以我们需要首先安装 Visual Studio 2019. 下载地址:https://vis…
Wechat4j是一个开源的java微信开发框架,是目前最简单易用的java微信开发框架. 项目地址:https://github.com/sword-org/wechat4j Wechat4j.jar下载:https://github.com/sword-org/wechat4j/releases 你也可以直接去下载需要的jar包集合,下载工具包 http://files.cnblogs.com/chengn/wechat4j-lib.rar 一.你需要去申请一个公众号,并且在开发者模式之下.…
对html标签的增强 -> 指令 指令的本质是什么 声明的方式调用相应的脚本,实现一些操作,声明的所在的dom就是脚本的执行上下文? 自定义标签 -- 标签指令自定义属性 -- 属性指令特定格式注释 -- 注释指令 概念模板 视图 模型 模块 指令 依赖注入 路由 > MVVM其他MVC框架 backbone emberjsAngular不依赖其他任何框架AngularJs重新定义了前端应用的开发方式,AngularJs特别适合开发单页面应用(SPA) > AngularJs的特性1.…
在WWDC的演示中就可以看出来Swift这个更接近于脚本的语言可以用更少的代码量完成和OC同样的功能.但是对于像我一样在战争中学习战争的同学们来说,天天抱着笨Swift Programming Language Reference之类的大部头看不实际.毕竟还是要养家糊口的.而且,那么1000+页内容讲的东西不是什么都要全部在平时工作中用到的.咱们就把平时用到的全部都放在一起,忘记了立马翻开看看,不知不觉的就学会了之后变成习惯.这样多省事. 变量 // Variable var int_varia…
目录 1.web项目的基本知识 1.1 项目构建 1.1.1传统的构建过程如下: 1.1.2 mavn构建项目 1.2 maven构建项目的优点: 2. 依赖管理 2.1 传统依赖管理 2.1.1 手工拷贝jar到工程存在的问题: 2.2 maven项目依赖管理 2.2.1 maven依赖管理的好处: 2.2 使用maven的好处 2.2.1 其他项目构建方式 3. Maven的下载和安装 3.1 环境变量的配置 4.Maven仓库repository 4.1 maven仓库的作用 4.1.1…
对象资源管理器里面 -- 数据库 -- 表目录 ,然后按 f7 弹出 对象资源管理详细信息 , 里面有搜索栏 , 可以 使用 % 进行模糊查询 例如我们查包含 student的表 %student% ,然后回车.…
该版本对于上一个版本做了升级.兼容性更好了. #!/bin/bash ####################################################### # $Name: clean_index.sh # $Version: v2.0 # $Function: delete es index # $Author: dongjiaxiao # $Create Date: 2019-12-31 # $Description: shell #################…
ActiveMQ 开发包下载及运行环境搭建 主页:http://activemq.apache.org/目前最新版本:5.11.1开发包及源码下载地址:http://activemq.apache.org/activemq-5111-release.html ActiveMQ 服务启动地址:http://127.0.0.1:8161/admin/ 用户名/密码admin/admin ActiveMQ下载完毕后,点击以下文件(64位和32位分别点击对应文件夹下的该文件): ActiveMQ 服务器…
尽管网络上,已经有不少文章讨论IPFS,不过真正讲明白IPFS想做什么的很少,文本尝试站在未来Web3.0的高度来看看IPFS究竟用来解决什么问题. DApp 的缺陷 对区块链有所了解的同学,知道区块链维护的是一个中立的(去中心).共同信任.难以篡改的数据库.智能合约创造的是一个完全透明(不被干扰)的运行规则,因此可以解决信任问题. 一切看起来很美好,我们可以开发去中心化应用DApp 解决信任问题,由此也确实产生了很多的博彩类DApp游戏. 不熟悉DApp的同学可以看我另一篇文章程序员如何切入区…
Go 语言网络编程 Go语言在编写 web 应用方面非常得力.因为目前它还没有 GUI(Graphic User Interface 图形化用户界面)的框架,通过文本或者模板展现的 html 界面是目前 Go 编写应用程序的唯一方式. 本章我们将全面介绍如何使用 Go语言开发网络程序.Go语言标准库里提供的 net 包,支持基于 IP 层.TCP/UDP 层及更高层面(如 HTTP.FTP.SMTP)的网络操作,其中用于 IP 层的称为 Raw Socket. Go语言Socket编程详解 在很…
初遇NFT-IPFS 本次学习如何使用Hardhat框架制作可预售的NFT并利用IPFS存储元数据. NFT简介 NFT全称Non-fungible Token(即非同质化通证).不可分割性(目前有碎片化协议暂且不谈)且独一无二.这有点对应现实资产比如古董.艺术品.即使是同一批厂家或者艺术家创作也难保证一模一样. NFT 目前主要用于艺术品.域名.虚拟资产.游戏.代表性的就是CryptoKitties.CryptoPunk.NBA Top Shot等 NFT的价值就是仁者见仁智者见智了,稀有程度…