JdbcTemplateTool
Spring 出品的 JdbcTemplate 对于不想使用hibernate或者ibatis那样需要大量学习成本而且还想获得对象化的人来说是很好用的。但是 JdbcTemplate还是有很多不足之处或者说是缺点。比如你没法像hibernate那样直接传一个对象给它让他拆分成sql并保存起来,当然这也是可以理解的,毕竟它并没有要求你去写 hbm.xml 文件所以无法知道你哪些字段要映射,哪些不要等等。又比如JdbcTemplate 可以帮忙把一个查询结果传化为一个对象列表,但是你需要查阅一些资料才知道要用 BeanPropertyRowMapper 。如果下次要用的时候又忘记了这个类,又要查一次或者翻以前的代码来看,其实完全可以提供一个方法直接传一个PO类进去自动创建 BeanPropertyRowMapper 。基于以上的一些不足之处,我建立了 JdbcTemplateTool 它有以下特性:
- 把查询结果转换为PO列表,不需要调用
BeanPropertyRowMapper
- 传一条统计sql比如 a
select count(1) from table
可以直接返回一个数字作为结果,不需要自己实现中间步骤。 - 可以直接把一个PO类存到数据库
- 通过PO类和一个id可以获取到该对象
- 通过PO类可以直接update数据库记录
- 不需要实现 BatchPreparedStatementSetter, 就可以批量update
- 通过一个对PO对象删除对应的数据库记录
- 依然可以使用原始的
JdbcTemplate
目前只在mysql上测试.
Maven 依赖
<dependency>
<groupId>org.crazycake</groupId>
<artifactId>jdbctemplatetool</artifactId>
<version>1.0.4-RELEASE</version>
</dependency>
快速开始
STEP 1. 创建一个maven项目
创建一个maven项目叫 testjtt
. 添加 jdbctemplatetool 依赖到 pom.xml. 再添加以下依赖到 pom.xml.
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.2.RELEASE</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.2.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.19</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework