2015年6月9日
摘要: 无论是使用jdk的线程池ThreadPoolExecutor 还是spring的线程池ThreadPoolTaskExecutor 都会使用到一个阻塞队列来进行存储线程任务。 当线程不够用时,则将后续的任务暂存到 阻塞队列中,等待有空闲线程来进行。 当这个阻塞队列满了的时候,会出现两种情况 正在运... 阅读全文
posted @ 2015-06-09 20:34 大招无限 阅读(22364) 评论(2) 推荐(3) 编辑
  2015年5月4日
摘要: 最近研究了一个别人的源码,其中用到多个线程并行操作一个文件,并且在所有线程全部结束后才进行主线程后面的处理。 其用到java.util.concurrent.CyclicBarrier 这个类。 CyclicBarrier是一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (c... 阅读全文
posted @ 2015-05-04 17:23 大招无限 阅读(499) 评论(0) 推荐(0) 编辑
  2015年4月20日
摘要: java多线程如何应用呢,几乎学java的同学都知道Thread类和Runable接口。继承Thread类或者实现Runable接口,调用thread的start方法即可启动线程。 然后是线程池,就是启动一系列的线程,当需要启动某个线程时,从线程池中拿取一个线程。 最近使用到需要启动一个线程进行复... 阅读全文
posted @ 2015-04-20 17:41 大招无限 阅读(1405) 评论(1) 推荐(0) 编辑
  2015年4月17日
摘要: Base64压缩UUID长度替换Hibernate原有UUID生成器本文来自http://my.oschina.net/noahxiao/blog/132277,个人储藏使用1、背景在采用Hibernate做对象映射时,我一直都采用UUID来做主键。由于Hibernate的UUID需要占用32位的字... 阅读全文
posted @ 2015-04-17 09:17 大招无限 阅读(8139) 评论(0) 推荐(0) 编辑
  2015年3月30日
摘要: Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。我也不明白这是什么意思,使用了之后大概就是提供一个将多个项目进行联合的一种分布式,使用的是一种长链接的方法,具体没有深入研究,只是试用了一下。其核心部分包含:远程通讯:提供对多种基于长连接的NI... 阅读全文
posted @ 2015-03-30 16:29 大招无限 阅读(2641) 评论(0) 推荐(0) 编辑
  2014年12月26日
摘要: 一: ThreadPoolTaskExecutor是一个spring的线程池技术,查看代码可以看到这样一个字段: private ThreadPoolExecutor threadPoolExecutor; 可以发现,spring的 ThreadPoolTaskExecutor是使用的jd... 阅读全文
posted @ 2014-12-26 15:30 大招无限 阅读(70459) 评论(0) 推荐(4) 编辑
  2014年12月24日
摘要: 1、查询去重数据select *, count(distinct name) from table group by name2.避免重复数据如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用:insertignoreinto table_name(ema... 阅读全文
posted @ 2014-12-24 12:55 大招无限 阅读(380) 评论(0) 推荐(0) 编辑
  2014年12月3日
摘要: 在做某个管理项目时,被要求实现一套流程管理,比如请假的申请审批流程等,在参考了很多资料,并和同事讨论后,得到了一个自主实现的流程管理。 以下提供我的设计思路,知道了思路,实现起来就简单很多了。 首先我设计了5个类来实现流程的自主设置,主要是对流程的定义和流程流转。 注:这是设计的图,并不是... 阅读全文
posted @ 2014-12-03 14:21 大招无限 阅读(31853) 评论(5) 推荐(4) 编辑
  2014年12月2日
摘要: seajs实现了JavaScript 的 模块开发及按模块加载。用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载。 官方文档:http://seajs.org/docs/#docs 首先看看seajs是怎么进行模块开发的。使用seaj... 阅读全文
posted @ 2014-12-02 00:36 大招无限 阅读(3733) 评论(0) 推荐(4) 编辑
  2014年12月1日
摘要: 在java中,为了防止命名冲突和模块式开发,会有个一个import 关键字来进行导包。 在js中为了达到同样的效果,我们也通过给其自定义一个“包”的概念。 直接上代码: 首先有个LC.js文件: //LC.jsvar LC = LC || {};LC.namespace = funct... 阅读全文
posted @ 2014-12-01 23:16 大招无限 阅读(416) 评论(0) 推荐(0) 编辑