瓜瓜派的瓜瓜
分类: IT业界
2012-01-09 15:54:22
IBatis3的Beta8版本已经发布了,在官方网站上声称目前的版本已经非常稳定,只有4个已知的问题,其中2个是非功能性的。作者宣称,这样的状况使它对于近期发布GA版本充满信心。 那么IBatis3与IBatis2相比,究竟变化在哪里呢? 最重要的变化是IBatis3中引入了接口绑定(Interface Binding)的概念。在IBatis2中,没有应用Java5的泛型,所以需要大量使用强制类型转换,比如: Employee employee = (Employee)sqlMapper.queryForList("getEmployee", 5); //...and... List employees = sqlMapper.queryForList("listAllEmployees"); 但是在IBatis3中,方法改变成: MapperFactory factory = someConfiguration.buildMapperFactory(); EmployeeMapper employeeMapper = factory.getMapper (EmployeeMapper.class); Employee emp = empMapper.getEmployee(5); //...and... List 所以IBatis3至少需要使用Java5以上的版本。上面代码中,EmployeeMapper是一个自定义的接口(注意,开发人员只需要定义一个接口,不需要提供具体的实现) public interface EmployeeMapper { Employee getEmployee (int employeeId); List } 这样就行了,IBatis会自动为你生成接口的具体实现。是不是感觉有点酷? |