会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
CoderBuff
hellobug@outlook.com
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
7
8
9
10
11
12
13
14
15
···
17
下一页
2017年2月14日
多个构造器参数使用构建器
摘要: 标题一眼看过去可能不是很明白要讲什么,先来看看下面一段代码。 这段代码可以说是相当的熟悉。当有很多可选参数时,我们常常采用“重叠构造器”模式,在上例中也就是第一个只有必要参数的构造器,第二第三个均为可选。当然还有下面这种更为简单的写法——Javabeans模式。 这种不用多说,简单粗暴。下面就是不采
阅读全文
posted @ 2017-02-14 00:02 OKevin
阅读(613)
评论(0)
推荐(0)
2016年12月25日
缓存的简单实现
摘要: //此文基于《Java并发编程实践》 我们都知道在应用程序中合理地使用缓存,能更快的访问我们之前的计算结果,从而提高吞吐量。例如Redis和Memcached基于内存的数据存储系统等。此篇文章介绍如何实现简单缓存。 首先定义一个Computable接口A是输入,V是输出。 实现这个接口,也即是在Ex
阅读全文
posted @ 2016-12-25 20:32 OKevin
阅读(2446)
评论(0)
推荐(0)
2016年12月19日
栅栏——CyclicBarrier
摘要: 栅栏CyclicBarrier和闭锁CountDownLatch类似,可以说它们都是用来计数,都能阻塞一组线程知道某个事件发生。不同的是闭锁用于等待事件,而栅栏用于等待其他线程。 在前一篇《CountDownLatch——闭锁的实现之一》中提到,在CountDownLatch里有一个计数器,一个线程
阅读全文
posted @ 2016-12-19 23:26 OKevin
阅读(457)
评论(0)
推荐(0)
2016年12月18日
FutureTask——另一种闭锁的实现
摘要: 关于多线程,我们接触对多的,最基础,入门的可能就是实现Runnable接口继承Thead类,因为Java单继承的原因,通常建议是实现Runnable接口。但这种“简单”的线程会带来一个问题,写过的人都知道,不管是实现Runnable还是继承Thread类,他们都是实现public void run(
阅读全文
posted @ 2016-12-18 01:46 OKevin
阅读(1222)
评论(0)
推荐(0)
2016年12月15日
CountDownLatch——闭锁的实现之一
摘要: CountDownLatch实际上是一种闭锁实现。闭锁:是一种同步工具类,可以延迟线程的进度直到其到达终止状态——《Java并发编程实战》。这个怎么解释呢?简单来说,就是有1个线程需要等待其余10个线程都执行完毕后再执行,这个时候就可以使用闭锁,也即CountDownLatch(当然闭锁的实现并不止
阅读全文
posted @ 2016-12-15 00:01 OKevin
阅读(1077)
评论(0)
推荐(0)
2016年11月17日
MyBatis源码解读(4)——SqlSession(上)
摘要: 在上一篇博客中提到MyBatis是如何实现代理类MapperProxy,并抛出了一个问题——是怎么执行一个具体的sql语句的,在文末中提到了MapperMethod的execute采用命令模式来判断是何种sql语句,并将具体语句的执行交由SqlSession处理。所以此篇博客正是要讲到SqlSess
阅读全文
posted @ 2016-11-17 23:55 OKevin
阅读(25975)
评论(6)
推荐(0)
2016年11月16日
MyBatis源码解读(3)——MapperMethod
摘要: 在前面两篇的MyBatis源码解读中,我们一路跟踪到了MapperProxy,知道了尽管是使用了动态代理技术使得我们能直接使用接口方法。为巩固加深动态代理,我们不妨再来回忆一遍何为动态代理。 我相信在初学MyBatis的时候几乎每个人都会发出一个疑问,为什么明明是XXXDao接口,我没有用任何代码实
阅读全文
posted @ 2016-11-16 23:52 OKevin
阅读(4394)
评论(0)
推荐(0)
2016年11月15日
MyBatis源码解读(2)——MapperProxy
摘要: SqlSession可以说是整个MyBatis的重中之重,在SqlSession中涉及到前一篇四大对象:Executor、StatementHandler、ParameterHandler、ResultHandler,所以在此先只对SqlSession有一个大概的了解。 在代码中我们可以看到当我们构
阅读全文
posted @ 2016-11-15 23:44 OKevin
阅读(9891)
评论(0)
推荐(1)
2016年11月14日
MyBatis源码解读(1)——SqlSessionFactory
摘要: 在前面对MyBatis稍微有点了解过后,现在来对MyBatis的源码试着解读一下,并不是解析,暂时定为解读。所有对MyBatis解读均是基于MyBatis-3.4.1,官网中文文档:http://www.mybatis.org/mybatis-3/zh/getting-started.html,My
阅读全文
posted @ 2016-11-14 23:33 OKevin
阅读(12737)
评论(4)
推荐(4)
2016年11月12日
Java中的Object、T(泛型)、?区别
摘要: 因为最近重新看了泛型,又看了些反射,导致我对Object、T(以下代指泛型)、?产生了疑惑。 我们先来试着理解一下Object类,学习Java的应该都知道Object是所有类的父类,注意:那么这就意味着它的范围非常广!首先记住这点,如果你的参数类型时Object,那么的参数类型将非常广! 《Thin
阅读全文
posted @ 2016-11-12 00:19 OKevin
阅读(45484)
评论(3)
推荐(4)
上一页
1
···
7
8
9
10
11
12
13
14
15
···
17
下一页
公告