使用Spring+JDBC集成步骤如下:
*配置数据源,例如:
- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
- <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
- <property name="url" value="jdbc:mysql://localhost:3306/test"/>
- <property name="username" value="root"/>
- <property name="password" value="123456"/>
- <!-- 连接池启动时的初始值 -->
- <property name="initialSize" value="1"/>
- <!-- 连接池的最大值 -->
- <property name="maxActive" value="100"/>
- <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 -->
- <property name="maxIdle" value="2"/>
- <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 -->
- <property name="minIdle" value="1"/>
- </bean>
*配置事务,配置事务时,需要在xml配置文件中引入用于声明事务的tx命名空间,事务的配置有两种方式:注解方式和基于XML配置的方式
下面演示下使用Spring注解方式管理事务
首先在配置文件中配置Spring提供的事务管理器
- <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
- <!-- 指定数据源 -->
- <property name="dataSource" ref="dataSource"/>
- </bean>
由于会使用注解方式,因此我们要打开注解处理器,对注解进行解析
- <tx:annotation-driven transaction-manager="txManager"/>
这样我们的配置文件配置完成,下面我们在Mysql中建立一张表,
- create table users
- (
- id int(11) not null auto_increment,
- username varchar(20) not null,
- primary key (id)
- )
根据数据库,我们创建javabean
- package com.szy.spring.bean;
- /**
- * @author coolszy
- * @time Dec 6, 2009 2:13:33 PM
- */
- public class User
- {
- private int id;
- private String username;
- public int getId()
- {
- return id;
- }
- public void setId(int id)
- {
- this.id = id;
- }
- public String getUsername()
- {
- return username;
- }
- public void setUsername(String username)
- {
- this.username = username;
- }
- }
然后创建DAO接口,在DAO中提供几个方法:
- package com.szy.spring.dao;
- import java.util.List;
- import com.szy.spring.bean.User;
- public interface UserDAO
- {
- public void save(User user);
- public void update(User user);
- Public User getUser(int id);
- public void delete(int id);
- public List<User> getAllUsers();
- }
实现这个接口
- package com.szy.spring.dao.impl;
- import java.util.List;
- import com.szy.spring.bean.User;
- import com.szy.spring.service.UserService;
- /**
- * @author coolszy
- * @time Dec 6, 2009 2:19:22 PM
- */
- public class UserDAOImpl implements UserDAO
- {
- public void delete(int id)
- {
- }
- public List<User> getAllUsers()
- {
- return null;
- }
- public User getUser(int id)
- {
- }
- public void save(User user)
- {
- }
- public void update(User user)
- {
- }
- }