内容简介:BeetlSQL 2.10.2 发布了,改进内容包括: #IGR8V Query类增加unique接口,如果未找到,或者有多条记录,抛错 #IGOZ5 修复 paras查询结果中多出两个参数;_pageOffset和_pageSiz #IGNWU Query类可以从Mapper里获...
BeetlSQL 2.10.2 发布了,改进内容包括:
#IGR8V Query类增加unique接口,如果未找到,或者有多条记录,抛错
#IGOZ5 修复 paras查询结果中多出两个参数;_pageOffset和_pageSiz
#IGNWU Query类可以从Mapper里获取
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>2.10.2</version> </dependency>
BeetlSQL介绍
* 派别:SQL为中心
* 强化 SQL 管理,通过md文件管理sql,使用Beetl模板编写复杂sql
* 简单SQL可以通过Query类链式API完成
* 内置常见增删改查功能,节省项目50%工作量
* 全面支持跨数据库平台
* 支持一对一,一对多等常见的ORM映射
* 其他
* 具备代码生成功能
* 主从支持
* 支持Interceptor,如Debug,Cache等
内置增删改查
* void insert(T entity);
* int updateById(T entity);
* int updateTemplateById(T entity);
* int deleteById(Object key);
* T unique(Object key);
* T single(Object key);
* T lock(Object key);
* List<T> all();
* List<T> template(T entity);
* <T> T templateOne(T entity);
* List<T> execute(String sql,Object... args);
* ....等等大量内置方法且可以扩展内置方法
Query查询
List<User> list = userDao.createQuery().andEq("name","hi").orderBy("create_date").select();如果是 Java 8,且引入了对jaque库依赖,则可以
List<User> list1 = userDao.createQuery().lamdba().andEq(User::getName, "hi").orderBy(User::getCreateDate).select();
管理SQL
@SqlResource("console.user")
public interface UserConsoleDao extends BaseMapper<SysUser> {
void batchDelUserByIds(List<Long> ids);
void batchUpdateUserState( List<Long> ids, GeneralStateEnum stateEnum);
@Sql("update sys_user set password=? where id=?")
int changePassword(String newPassword,long id);
}
对应的sql文件是console/user.md,内容如下
batchDelUserByIds === update SYS_USER u set u.del_flag = 1 where u.id in( #join(ids)#) batchUpdateUserState === update SYS_USER u set u.state = #state# where u.id in( #join(ids)#)
关系映射
selectUserAndDepartment
===
select * from user where user_id=#userId#
@ orm.single({"departmentId":"id"},"Department");
@ orm.many({"id":"userId"},"user.selectRole","Role");
user.selectRole
===
select r.* from user_role ur left join role r on ur.role_id=r.id
where ur.user_id=#userId#也支持注解说明映射关系
与hiberante,myabtis比较
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上所述就是小编给大家介绍的《BeetlSQL 2.10.2 发布,Java Dao 工具》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
How to Build a Billion Dollar App
George Berkowski / Little, Brown Book Group / 2015-4-1 / USD 24.95
Apps have changed the way we communicate, shop, play, interact and travel and their phenomenal popularity has presented possibly the biggest business opportunity in history. In How to Build a Billi......一起来看看 《How to Build a Billion Dollar App》 这本书的介绍吧!