为艺术而技术

Copy Move的原子性

01 August, 2019

最近在使用一个Linux…

NodeJs连接Sybase

31 July, 2019

项目遇到一个新需求,把一个传统的Java API用NodeJS来实现,由于要连接远程的Sybase数据库。这个过程中就出现了好几个问题。记录一下。 数据库的问题 一开始尝试的是生产数据库,用的是DBVisulizer…

DOM SAX StAX

18 July, 2019

都现在了,我也没有想到自己又回到十年前重新又碰Java解析XML,现在一个老项目中间正好用到,自己也算复习一下。 DOM DOM(Document Object Model) 是第一种解析办法,也是最早的一种,基本就是把整个XML…

JS写CSV

12 July, 2019

在JS框架盛行的现在,临时输出一个CSV文件让用户下载,是个很平常的需求。我遇到了一点问题。 问题 你有一个json对象的数组,需要输出作为csv供用户下载。 通常模式 在加上如下的html即可。 高级模式 可是,如果你的csv文件内容太大,Chrome…

常见开源软件License列表

04 July, 2019

名字 网址 License Apache Axis http://axis.apache.org/ Apache License 2.0 Apache Xmlbeans https://xmlbeans.apache.org/ Apache License 2.0 Apache…

快速排序面面观

19 June, 2019

偶遇一个有趣网站,把quick-sort的各种语言实现都呈现出来,很有趣,分享之。 快排序 快排序是比较好的排序方法,平均性能是O(nlogn)。 基本思路如下: 在数组中找一个元素,称之为 pivot 分片:把所有小于 pivot…

如何提高单元测试覆盖率

23 May, 2019

最近把项目打扫了下,代码行数从18万减少到14万,代码覆盖率从65%提高到7…

Git Pull, Merge and Rebase

22 May, 2019

三种操作都可以进行代码的整合。 Merge Merge by Fast-forward Fast-forward 这种类型就相当于把主线直接提前到和merge近来的支线的位置(master -> hotfix),是最简单的。 Merge by Three-way…

JS同步与异步

17 May, 2019

JS本身是单线程的,默认当然就是同步的。具体实现原理,请阅这篇文章。但是可以很方便的实现异步函数。同步函数异步化以及异步函数同步化是我们经常遇到的问题,下面逐一解释。 Update on 20190620: 增加async/await 同步函数异步化  setTimeout…

SQL Server主键最大之后

16 May, 2019

通常数据库的主键都有一个最大值,如果你有一个产品有幸运行足够长的时间,那么你也将“有幸”遇到这个问题 错误 预防 以下这个脚本可以让你知道你的数据库中有那些表的主键已经到达其类型的百分比了。比如如果到达95%,你就要准备了。 方法 先做备份 创建新表,这次注意使用bigint…

© 2019 - 2022 yuanqingfei
Creative Commons License