Fetch the repository succeeded.
简单、快速、易用的jdbc持久化操作层。
** 最近更新:4.2.1 **
//根据主键获取
User user = jdbcDao.get(User.class, 177);
//查询所有列表
List<User> users = jdbcDao.find(User.class);
//查询分页列表
Page<User> page = jdbcDao.pageResult(user);
//会根据user对象中不为null的属性做为条件查询
long count = jdbcDao.findCount(user);
//会根据user对象中不为null的属性做为条件查询 没有数据时返回null,超过一条时会抛出异常
User user = jdbcDao.singleResult(user);
//超过一条时取第一条,有经过分页处理,全表查取第一条也不用担心返回数据过多
User user = jdbcDao.firstResult(user);
//会根据主键策略自动处理主键,如果实体对象中设置了主键值则不再处理
//返回的主键值类型根据生成的主键不同可自行转换
Long id = (Long)jdbcDao.executeInsert(user);
//根据主键更新实体对象
jdbcDao.executeUpdate(user);
//根据主键删除实体对象
jdbcDao.executeDelete(User.class, 1800081L);
//SQL: update User set user_age = user_age + 1 where user_info_id = 17
jdbcDao.update(User.class)
.set("{{userAge}}", "userAge+1")
.where("userInfoId", 17L)
.execute();
//SQL: select user_age, count(*) num from user_info group by user_age order by num desc limit 0,10
Page<Object> page = jdbcDao.select("userAge,count(*) Num")
.from(UserInfo.class)
.groupBy(UserInfo::getUserAge()) //4.0版开始属性推荐使用lambda方式,防止拼错
.orderBy("Num").desc()
.paginate(1, 10)
.isCount(false)
.pageResult();
{{}}
符号完成一些特殊的sql,例如user_age = user_age + 1
这种不适合传参的情况组件本质上也只是封装了一个通用dao,只不过更加方便易用。当发现组件缺少某项功能或不能满足需求时仍可以用本来原生的方式执行,完全无影响。
添加依赖,默认使用Spring Jdbc
实现,可更换成自己想要的实现:
<dependency>
<groupId>com.sonsure</groupId>
<artifactId>sonsure-dumper-springjdbc</artifactId>
<version>${version}</version>
</dependency>
声明Bean,更多参数详见相关配置文档:
<bean id="jdbcDao" class="com.sonsure.dumper.springjdbc.persist.SpringJdbcDaoTemplateImpl">
<property name="dataSource" ref="dataSource"/>
</bean>
传统注入方式使用JdbcDao:
//不管哪个实体对象都使用该JdbcDao就可以
@Autowired
private JdbcDao jdbcDao;
jdbcDao.get(User.class, 177);
如果开启了全局模式,可以直接使用Jdbc操作:
User user = Jdbc.get(User.class, 177);
说明文档中可能会有xml方式配置或JavaConfig方式配置,两种方式效果是一样的,可根据情况自行转换。
github:https://github.com/selfly/sonsure-dumper
gitee: https://gitee.com/selfly/sonsure-dumper
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
Activity
Community
Health
Trend
Influence
:Code submit frequency
:React/respond to issue & PR etc.
:Well-balanced team members and collaboration
:Recent popularity of project
:Star counts, download counts etc.