percentile_approx计算方法
参考:http://blog.sina.com.cn/s/blog_72e6be570101w731.htmlpercentile(array,p)算法一般是:将数组array从小到大排序,计算(n-1)*p的整数部分为i,小数部分为j,其中n为数组大小,则percentile的值是:(1-j)*array第i+1个数+j*array第i+2个数。(10-1)*0.8=7.2那么i=7,j=0.2(1-0.2)*8+0.2*9=8.2在Oracle里面是...
网页搜索客户端
网站上一些用户自己上传的歌曲侵权了.编辑给我一个Excel,包含歌曲名称和歌手名称.比如最接近天堂的地方张杰最浪漫的事(改编版)张杰最美的太阳张杰括号里的内容需要去除之后再匹配.由于Excel的内容五花八门,...
gitbook和Markdown
安装gitbookyum install npmnpm install -g gitbook-cli参考:http://www.jianshu.com/p/q81RERhttp://colobu.com/2014/10/09/gitbook-quickstart/http://leeluolee.github.io/2014/07/22/2014-07-22-gitbook-guide/https://chrisniael.gitbooks.io/gitbook-documentation/content/format/markdown.html
小花狸MyBatis慢查询监控插件
功能1.定期统计每个SQL的执行次数,平均执行时间和平均返回行数,并且打印在日志中2.如果有慢SQL或者返回行数很多的SQL,直接在日志中打印详细信息.maven依赖 ...
初探Lucene
学习地址:https://segmentfault.com/a/1190000003101607http://yijun1171.github.io/2014/12/06/Lucene%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/http://www.cnblogs.com/forfuture1978/archive/2009/12/14/1623594.html添加依赖: <dependency>&nb...
创建Maven模板项目
假如已经存在了一个项目,http://blog.itpub.net/29254281/viewspace-1974603/这个项目已经搭建好了springmvc,spring和MyBatis的环境把这个项目转为Maven模板,以后新建项目可以直接从模板生成,省去项目搭建的步骤.查看帮助信息E:\workspace\songod>mvn archetype:helparchetype:create-from-project Creates...
搭建SpingMVC,Spring,MyBatis项目环境
首先Eclipse创建一个Maven Web项目使用maven-archetype-webapp模板整体结构如下先看pom.xml
秒杀系统架构分析与实战
来源:陶邦仁网址:http://my.oschina.net/xianggao/blog/5249431 秒杀业务分析正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间...
搭建Maven和Nexus环境
下载Maven和Nexusapache-maven-3.3.9nexus-2.12.0-01解压nexus,进入目录D:\nexus-2.12.0-01-bundle\nexus-2.12.0-01\bin>安装服务D:\nexus-2.12.0-01-bundle\nexus-2.12.0-01\bin>nexus.bat install启动服务D:\nexus-2.12.0-01-bundle\nexus-2.12.0-01\bin>nexus.bat startwrapper | Starting the nexus se...
只用五分钟为系统实现基于JMX的监控
转载自:http://my.oschina.net/zhongl/blog/29075JMX 早期是作为J2EE的一部分, 因此总给人一种开发起来会很"重"的感觉, 这让不少Java程序员宁愿选择自行实现"轻量级"方案. 时至今日, 借助一些优秀的开源项目, JMX 也可以用起来很"轻".使用 pojo-mbean 声明MBeanpojo-mbean 使用Annotation对MBean进行声明, 省去不少 JM...
MySQL树形遍历(四)--代码优化
MySQL树形遍历(三) http://blog.itpub.net/29254281/viewspace-1867455/这个程序实际上在模拟之前的那个SQL写法.http://blog.itpub.net/29254281/viewspace-1851457/但是实际上,使用递归造成了很多无效的重复的计算.其实一个循环遍历,就搞定了.import java.sql.Connection;import java.s...
MySQL树形遍历(三)
MySQL虽然也可以实现Oracle的sys_connect_by_path功能.但是性能很差.详见:http://blog.itpub.net/29254281/viewspace-1851457/其实这种还是用程序算比较好.import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; &nb...
Peterson算法
转载自:http://blog.csdn.net/speedme/article/details/17595821因为P1,P2两个进程的执行顺序是随机的,可能顺序执行也可能是并发的,由图可见,不同的执行顺序,COUNT的值会不同,这是不允许的。像这种情况,及多个进程并发访问和操作同一数据且执行结果与访问发生的特定顺序有关,称为竞争条件。为了避免...
Java不写文件,LOAD DATA LOCAL INFILE大批量导入数据到MySQL的实现
大家都知道当插入大批量数据MySQL的时候,MySQL使用load data local infile 从文件中导入数据比insert语句要快,MySQL文档上说要快20倍左右。但是这个方法有个缺点,就是导入数据之前,必须要有文件,也就是说从文件中导入。这样就需要去写文件,以及文件删除等维护。某些情况下,比如数据源并发的话,还会出现写文件并...
单表增删改查界面的模板
最近有个事情比较搞笑.客户端研发比较托大.测试环境的数据录入,他们居然不管.让需求录入数据.需求也很苦闷.正所谓当仁不让,这点事情对于本猫来说不算困难.使用freemaker 2.3.23(2.2.8这个版本会出现各种奇怪的错误)JAVA代码主要是获取数据库中表的元数据,包括所有的字段名称和类型,以及主键的信息.删除和更新要依...
理解Java中的弱引用
http://www.importnew.com/17019.html不久之前,我面试了一些求职Java高级开发工程师的应聘者。我常常会面试他们说,“你能给我介绍一些Java中得弱引用吗?”,如果面试者这样说,“嗯,是不是垃圾回收有关的?”,我就会基本满意了,我并不期待回答是一篇诘究本末的论文描述。然而事与愿违,我很吃惊的发现,在将...
Jdk1.6 JUC源码解析(7)-locks-ReentrantLock
转自 大飞的博客http://brokendreams.iteye.com/blog/2250883Jdk1.6 JUC源码解析(7)-locks-ReentrantLock作者:大飞 功能简介:Java代码层面提供的锁机制,可做为Synchronized(jvm内置)的替代物,和Synchronized一样都是可重入的。与Synchronized相比较而言,ReentrantLock有...
无锁编程的一点想法
在多线程环境下,对共享资源的修改,是一定要加锁的。但是在高并发的环境下,锁竞争的代价非常高.一些针对共享资源的修改,过程非常短暂,可以考虑使用串行化,适当限制并发同时也避免了死锁的...
构建高效且可伸缩的结果缓存
<span style="font-family:Courier New;"><span style="font-size:16px;"><span style="color:#003399;">JAVA并发编程实践<br />第85页<br /><br />环境 JDK1.6(貌似使用1.7编译会有问题)<br /><br />第一版 <span style="color:#0000FF;letter-spacing:0.100000001490116px;line-height:15.6000003814697px;whit...
HashMap死锁分析
参考:http://github.thinkingbar.com/hashmap-infinite-loop/