发布于 2016-02-19 03:52:22 | 133 次阅读 | 评论: 0 | 来源: 网友投递
beetlsql mybatis 功能 beetl 实现
BeetSql是一个全功能DAO工具, 同时具有Hibernate 优点 & Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。
BeetlSql 2.0 正式发布了,2.0修复了若干bug,主要增加了Mapper,将对sql文件调用映射为方法调用
修复:
#65 修复DebugInterceptor 显示 批处理操作结果错误的bug
#62 修复代码生成在JDK6下不能运行的bug
提高:
#64 直接执行sql模板增加翻页支持
#63 SQLManager 增加了映射原始类型
#54 最为重要的更新是增加了Mapper,将对sql文件操作映射为调用接口方法
Mapper说明:
仅仅定义一个接口如下:
public interface UserDao extends BaseMapper<User> { public List<User> queryUser(@Param("name") String name,@Param("age") Integer age,@RowStart int start,@RowSize int size); public int getCount(); public int setUserStatus(Map paras); //更新用户状态,成功语法通过返回值判断 public int[] setUserStatus(List<User> paras); //批量更新用户状态 public KeyHolder newUser(User user);// 添加用户 }
业务代码里
UserDao dao = sql.getMapper(UserDao.class); dao.insert(user) //使用BaseMapper; dao.queryUser("xiandafu",18, 1, 10);
UserDao 里的方法对应了user.md 里的 sql语句,SQLManager 会将方法调用映射到sql语句
queryUser === * 按照年纪查找用户 select * from User where 1 =1 @if(isNotEmpty(age)){ and age = #age# @} findById === select * from User where id = #id# getCount === select count(*) from User setAge === update user set age = #age# where id=#id# setUserStatus === update user set age = #age#,name=#name# where id=#id#
Maven地址
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>2.0</version> </dep