Spring教程—整合JDBC

文件结构如下图:

User_info.java:

package entity;

import java.util.Date;

public class User_info {
	private String user_code;
	private String name;
	private String sex_code;
	private String identity_code;
	private String id_no;
	private Date birthday;
	private String family_addr;
	public String getUser_code() {
		return user_code;
	}
	public void setUser_code(String user_code) {
		this.user_code = user_code;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getSex_code() {
		return sex_code;
	}
	public void setSex_code(String sex_code) {
		this.sex_code = sex_code;
	}
	public String getIdentity_code() {
		return identity_code;
	}
	public void setIdentity_code(String identity_code) {
		this.identity_code = identity_code;
	}
	public String getId_no() {
		return id_no;
	}
	public void setId_no(String id_no) {
		this.id_no = id_no;
	}
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	public String getFamily_addr() {
		return family_addr;
	}
	public void setFamily_addr(String family_addr) {
		this.family_addr = family_addr;
	}
	@Override
	public String toString() {
		return "User_info [user_code=" + user_code + ", name=" + name
				+ ", sex_code=" + sex_code + ", identity_code=" + identity_code
				+ ", id_no=" + id_no + ", birthday=" + birthday
				+ ", family_addr=" + family_addr + "]";
	}
	
}

  User_info_mapper.java:

 1 package mapper;
 2 
 3 import java.sql.ResultSet;
 4 import java.sql.SQLException;
 5 
 6 import org.springframework.jdbc.core.RowMapper;
 7 
 8 import entity.User_info;
 9 
10 public class User_info_mapper implements RowMapper<User_info> {
11 
12     @Override
13     public User_info mapRow(ResultSet rs, int arg1) throws SQLException {
14         User_info user_info = new User_info();
15         user_info.setBirthday(rs.getDate("birthday"));
16         user_info.setFamily_addr(rs.getString("family_addr"));
17         user_info.setId_no(rs.getString("id_no"));
18         user_info.setIdentity_code(rs.getString("identity_code"));
19         user_info.setName(rs.getString("name"));
20         user_info.setSex_code(rs.getString("sex_code"));
21         user_info.setUser_code(rs.getString("user_code"));
22         return user_info;
23     }
24 
25 }

User_info_Service.java(接口):

 1 package service;
 2 
 3 import java.util.List;
 4 
 5 import entity.User_info;
 6 
 7 public interface User_info_Service {
 8     public void insert(User_info user_info);
 9     
10     public void delete(String user_code);
11     
12     public void update(User_info user_info);
13     
14     public User_info findByID(String user_code);
15     
16     public List<User_info> findAll();
17 }

User_info_Service_impl.java(实现类):

 1 package service.impl;
 2 
 3 import java.util.List;
 4 
 5 import javax.annotation.Resource;
 6 
 7 import mapper.User_info_mapper;
 8 
 9 import org.springframework.jdbc.core.JdbcTemplate;
10 import org.springframework.jdbc.core.RowMapper;
11 import org.springframework.stereotype.Service;
12 
13 import entity.User_info;
14 import service.User_info_Service;
15 @Service
16 public class User_info_Service_impl implements User_info_Service{
17     @Resource(name="jdbcTemplate")
18     private JdbcTemplate jdbcTemplate;
19     @Override
20     public void insert(User_info user_info) {
21         String sql="insert into user_info values(?,?,?,?,?,?,?)";
22         Object[] args = new Object[]{user_info.getUser_code(),user_info.getName(),user_info.getSex_code(),user_info.getIdentity_code(),user_info.getId_no(),user_info.getBirthday(),user_info.getFamily_addr()};
23         jdbcTemplate.update(sql, args);
24     }
25 
26     @Override
27     public void delete(String user_code) {
28         String sql = "delete user_info where user_code=?";
29         jdbcTemplate.update(sql, user_code);
30     }
31 
32     @Override
33     public void update(User_info user_info) {
34         String sql = "update user_info set name=?,sex_code=?,identity_code=?,id_no=?,birthday=?,family_addr=? where user_code=?";
35         Object[] args = new Object[]{user_info.getName(),user_info.getSex_code(),user_info.getIdentity_code(),user_info.getId_no(),user_info.getBirthday(),user_info.getFamily_addr(),user_info.getUser_code()};
36         jdbcTemplate.update(sql, args);
37     }
38 
39     @Override
40     public User_info findByID(String user_code) {
41         String sql ="select * from user_info where user_code=?";
42         RowMapper<User_info> mapper = new User_info_mapper();
43         User_info user_info = jdbcTemplate.queryForObject(sql, new Object[]{"0001"}, mapper);
44         return user_info;
45     }
46 
47     @Override
48     public List<User_info> findAll() {
49         String sql ="select * from user_info";
50         RowMapper<User_info> mapper = new User_info_mapper();
51         List<User_info> List = jdbcTemplate.query(sql, mapper);
52         return List;
53     }
54 
55 }

applicationContext.xml(放置在src文件夹下):

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"
 4     xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
 5     xmlns:jee="http://www.springframework.org/schema/jee"
 6     xsi:schemaLocation="
 7             http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
 8             http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
 9             http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
10             http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
11             http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd">
12     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
13         <!-- 加载的类 -->
14         <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
15         <!-- url地址 -->
16         <property name="url" value="jdbc:oracle:thin:@localhost:1521:xe" />
17         <!-- 用户名 -->
18         <property name="username" value="abc" />
19         <!-- 密码 -->
20         <property name="password" value="abc" />
21         <!-- 连接池启动时的初始值 -->
22         <property name="initialSize" value="1" />
23         <!-- 连接池的最大值 -->
24         <property name="maxActive" value="500" />
25         <!-- 最大空闲值,当经过一个高峰时间后,连接池可以慢慢将已经用不到 的连接慢慢释放一部分,一直减少到MaxIdle为止 -->
26         <property name="maxIdle" value="2" />
27         <!-- 最小空闲值,当空闲值的连接数少于阙值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 -->
28         <property name="minIdle" value="1" />
29     </bean>
30     <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
31         <property name="dataSource" ref="dataSource"></property>
32     </bean>
33     <context:component-scan base-package="service"></context:component-scan>
34 </beans>

 

posted @ 2014-11-04 18:48  迷音  阅读(194)  评论(0编辑  收藏  举报