自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 JPA学习

JPA是一套对象持久化规范,可以通过多种工具实现它。比如常见的Hibernate。按说初学就该照猫画虎的写例子,可是总改不了探究为什么的好奇心。于是在经历了不少曲折和困惑之后,终于把Hibernate和eclipselink两种实现的例子都完成了,也体会了一点二者的区别。 先看在eclipse里的默认jpa项目的做法: 新建JPAProject,填写项目名称和Targetruntime(因为只

2014-04-29 18:05:31 1729

原创 Solr示例

Lucene是apache软件基金会提供的一款开源全文检索引擎。Solr是在lucene基础上封装得更易于使用的全文检索服务器并提供了相关api。 本文使用solr3.4,做一个使用示例,已调试通过。更高版本可能需要更改代码。 1.启动solr。解开solr压缩包后,在solr_home\dist下有个war包。一种方式是把这个war包部署到web容器里。我这里图省事,就直接用自带的jetty

2014-04-24 14:58:15 1736 1

原创 java代理技术二(Cglib实现)

由于jdk默认实现只能对接口进行代理,对普通类就不行了。所以Cglib正是为了弥补这种不足开发的。原理是对指定的目标类生成一个子类,并覆盖其中方法实现增强。因为采用的是继承,所以不能对final修饰的类进行代理。 采用上一篇类似的代码: 一个普通类(未明确指明实现接口) public class DoSomethingImpl2 { public void doA() { Syst

2014-04-17 14:31:23 1144

原创 java代理技术一(jdk默认实现)

很多框架和工具都是利用代理技术实现的。典型的如spring 的AOP、easymock、单元覆盖率检测工具等。静态代理比较好理解,就是自己写代理类来完成附加的功能,设计模式中专门有个代理模式讲这个。动态代理是指代理实现对象并不是在编译期间生成好的,而是在运行过程中产生的。这样的好处是当被代理的接口方法(注:jdk动态代理只能对接口进行代理)发生变化时,不需要改动代理实现类的代码。以下为示例代码:

2014-04-16 18:55:40 1118

原创 java泛型

印象中java泛型多用在容器类中,所以在其他场合的应用就没怎么注意。最近在读某个项目代码时,看到Hibernate存储数据的方法被写成泛型参数,恍然大悟。这是编程中的常用技巧,可以用于精简代码数量。于是为了深入理解,做了一些小例子,记录一下。 在容器中使用泛型的常见格式,如: List 表示接受任意类型 List 表示接受AClass及其子类型 List 表示接受BClass及其父

2014-04-14 09:01:00 1002

原创 代码执行覆盖率工具Emma、cobertura简单比较

Emma和cobertura都是代码执行覆盖率工具。两者的使用方法和执行结果都很相似,甚至菜单名称也差不多。   在eclipse里能找到的eCobertura插件已经是好几年前的版本了,而且在上一个JUNO版本中可以安装上,而在新近的Kepler版本里会提示没有找到junit4插件什么的,只能手工安装(见本文最后)   相对来说emma还是一直在更新着。在eclipse里搜索emma插件

2014-04-06 09:41:16 2466

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除