Spring框架 第7章 JdbcTemplate

第7章 JdbcTemplate 

7.1  概述

为了使JDBC更加易于使用,Spring在JDBC API上定义了一个抽象层,以此建立一个JDBC存取框架。

作为Spring JDBC框架的核心,JDBC模板的设计目的是为不同类型的JDBC操作提供模板方法,通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低。

可以将Spring的JdbcTemplate看作是一个小型的轻量级持久化层框架,和我们之前使用过的DBUtils风格非常接近。

7.2  环境准备

7.2.1导入JAR包

  • IOC容器所需要的JAR包

commons-logging-1.1.1.jar

spring-beans-4.0.0.RELEASE.jar

spring-context-4.0.0.RELEASE.jar

spring-core-4.0.0.RELEASE.jar

spring-expression-4.0.0.RELEASE.jar

  • JdbcTemplate所需要的JAR包

spring-jdbc-4.0.0.RELEASE.jar

spring-orm-4.0.0.RELEASE.jar

spring-tx-4.0.0.RELEASE.jar

  • 数据库驱动和数据源

c3p0-0.9.1.2.jar

mysql-connector-java-5.1.7-bin.jar

 

7.2.2创建连接数据库基本信息属性文件

user=root

password=root

jdbcUrl=jdbc:mysql:///query_data

driverClass=com.mysql.jdbc.Driver

 

initialPoolSize=30

minPoolSize=10

maxPoolSize=100

acquireIncrement=5

maxStatements=1000

maxStatementsPerConnection=10

7.2.3在Spring配置文件中配置相关的bean

  • 数据源对象

<context:property-placeholder location="classpath:jdbc.properties"/>

 

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">

<property name="user" value="${user}"/>

<property name="password" value="${password}"/>

<property name="jdbcUrl" value="${jdbcUrl}"/>

<property name="driverClass" value="${driverClass}"/>

<property name="initialPoolSize" value="${initialPoolSize}"/>

<property name="minPoolSize" value="${minPoolSize}"/>

<property name="maxPoolSize" value="${maxPoolSize}"/>

<property name="acquireIncrement" value="${acquireIncrement}"/>

<property name="maxStatements" value="${maxStatements}"/>

<property name="maxStatementsPerConnection" 

value="${maxStatementsPerConnection}"/>

</bean>

  • JdbcTemplate对象

<bean id="template" 

class="org.springframework.jdbc.core.JdbcTemplate">

<property name="dataSource" ref="dataSource"/>

</bean>