JDK5.0的使用

本文档讲述JDK5.0各种特征在SpringSide中的使用。

 1.AutoBoxing 与For Loop Enhancement

这两个语法简化糖,被用在了每一个地方。

2.Annotation

暂时只用于Compass的Searchable Pojo 定义。Compass用Annotation的定义比使用XML文件要简单很多倍。

3.泛型

用于BaseDao, 泛型配合反射API获得T.class。

子类只需定义为BookManager extends BaseHibernateDao<Book>,就无须再实现getEntityClass()函数,所以返回T的函数如T find(int id);在子类使用时也无须再作强行类型转换。

4.静态import

在使用EasyMock的测试用例里,静态导入EasyMock,使得可以直接使用其静态函数。看起来就像那些方法都属于本测试用例的。

import static org.easymock.classextension.EasyMock.*;
public void testList() throws Exception {
        //录制bookManager findAllBy和getAllCategorys方法的期望值
        expect(mockManager.findBy(null, new HashMap())).andReturn(new Page());
        replay(mockManager);
}

5.可变参数

可变参数至少可以解决同时需要find(String sql,String arg), find(sql,String[] args) 这样的双接口问题。
     另外,在find函数里,find(sql,arg1,arg2,arg3) 也比find(sql,new String[]{arg1,arg2,arg3} ) 简洁明了。