spring使用JdbcTemplate
2017-01-09 16:57
441 查看
知识点:
为了使JDBC更加易于使用,Spring在JDBC API上定义了一个抽象层,以此建立一个JDBC存取框架
作为Spring JDBC框架的核心,JDBC模板的设计目的是为了不同类型的JDBC操作提供模板方法,每个模板方法都能控制整个过程,并允许覆盖过程中的特定任务,通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低
使用JdbcTemplate更新数据库
用sql语句和参数更新数据库
update
public int update(String sql,Object... args)
throws DataAccessException
批量更新数据库
batchUpdate
public int[] batchUpdate(String sql,List<Object[]> batchArgs)
使用JdbcTemplate 查询数据库
查询单行
queryForObject
public <T> T queryForObject(String sql,
ParameterizedRowM<T> rm,
Object... args)
throw DataAccessException
便利的BeanPropertyRowMapper实现
org.springframework.jdbc.core.simple
Class parameterizedBeanPropertyRowMapper<T>
java.lang.object-->org.springframework.jdbc.core.BeanPropertyRowMapper-->org.springframework.jdbc.core.simple.ParameterizedBeanPropertyRowMapper<T>
简化JDBC模板查询
每次使用都创建一个JdbcTemplate的新实例,这种做法效率很低下
JdbcTemplate类被设计成为线程安全的,所以可以在IOC容器中声明它的单个实例,并将这个实例注入到所有的DAOA实例中
JdbcTemplate也利用了Java1.5的特性(自动装箱,泛型,可变长度等)来简化开发
Spring JDBC框架还提供了一个JdbcDaoSupport类来简化DAO实现,该类声明了jdbcTemplate属性,它可以从IOC容器中注入,或者自动从数据源中创建
注入JDBC模板示例代码
<bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
<bean id="personDAO"
class="org.simpleit.jdbc.PersonDAO">
<property name="jdbcTemplate" ref="jdbcTemplate"></property>
</bean>
示例:
xml:
mysql数据表
java相关jar包及数据库配置文件
对应数据库表的bean类
使用jdbctemplate的类(测试):
以上那些图片是一个java类,一张图截不下。
关于JdbcDaoSupport用的不多,不在截图。
扩展JdbcDaoSupport示例代码
public class PersonDAO extends JdbcDaoSupport
<bean id="personDAO"
class="org.simpleit.jdbc.PersonDAO">
<property name="dataSource" ref="dataSource"/>
</bean>
为了使JDBC更加易于使用,Spring在JDBC API上定义了一个抽象层,以此建立一个JDBC存取框架
作为Spring JDBC框架的核心,JDBC模板的设计目的是为了不同类型的JDBC操作提供模板方法,每个模板方法都能控制整个过程,并允许覆盖过程中的特定任务,通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低
使用JdbcTemplate更新数据库
用sql语句和参数更新数据库
update
public int update(String sql,Object... args)
throws DataAccessException
批量更新数据库
batchUpdate
public int[] batchUpdate(String sql,List<Object[]> batchArgs)
使用JdbcTemplate 查询数据库
查询单行
queryForObject
public <T> T queryForObject(String sql,
ParameterizedRowM<T> rm,
Object... args)
throw DataAccessException
便利的BeanPropertyRowMapper实现
org.springframework.jdbc.core.simple
Class parameterizedBeanPropertyRowMapper<T>
java.lang.object-->org.springframework.jdbc.core.BeanPropertyRowMapper-->org.springframework.jdbc.core.simple.ParameterizedBeanPropertyRowMapper<T>
简化JDBC模板查询
每次使用都创建一个JdbcTemplate的新实例,这种做法效率很低下
JdbcTemplate类被设计成为线程安全的,所以可以在IOC容器中声明它的单个实例,并将这个实例注入到所有的DAOA实例中
JdbcTemplate也利用了Java1.5的特性(自动装箱,泛型,可变长度等)来简化开发
Spring JDBC框架还提供了一个JdbcDaoSupport类来简化DAO实现,该类声明了jdbcTemplate属性,它可以从IOC容器中注入,或者自动从数据源中创建
注入JDBC模板示例代码
<bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
<bean id="personDAO"
class="org.simpleit.jdbc.PersonDAO">
<property name="jdbcTemplate" ref="jdbcTemplate"></property>
</bean>
示例:
xml:
mysql数据表
java相关jar包及数据库配置文件
对应数据库表的bean类
使用jdbctemplate的类(测试):
以上那些图片是一个java类,一张图截不下。
关于JdbcDaoSupport用的不多,不在截图。
扩展JdbcDaoSupport示例代码
public class PersonDAO extends JdbcDaoSupport
<bean id="personDAO"
class="org.simpleit.jdbc.PersonDAO">
<property name="dataSource" ref="dataSource"/>
</bean>
相关文章推荐
- Spring:JdbcTemplate使用指南
- Spring使用JdbcTemplate操作数据库---使用RowCallbackHander读数据篇
- Spring:JdbcTemplate使用指南
- Spring中JdbcTemplate的使用
- Spring 中的JdbcTemplate使用
- Spring:JdbcTemplate使用指南
- Spring:JdbcTemplate使用指南
- 在spring中同时使用jdbcTemplate和hibernateTemplate
- 配制Spring事务和JdbcTemplate使用。(转)
- Spring+JDBC组合开发 - 使用JdbcTemplate进行insert/update/delete/query操作
- Spring使用JdbcTemplate操作数据库---使用RowMapperResultSetExtractor读数据篇
- Spring:使用JdbcTemplate的简单实例-基于XML文件配置
- 使用Spring的JdbcTemplate获得任意表的数据集
- Spring使用JdbcTemplate操作数据库
- Spring:JdbcTemplate使用指南(转)
- Spring使用JdbcTemplate操作数据库---写数据篇
- 使用Spring的JdbcTemplate获得任意表的数据集
- Spring:使用JdbcTemplate的简单实例-基于注释
- Spring:JdbcTemplate使用指南
- Spring使用JdbcTemplate操作数据库