1.导入mysql-connector-java-5.1.17-bin.jar 包
2.选择一个数据源(DBCP Cp30),这次我们选用DBCP
3.导入DBCP包,commons-dbcp.jar和commons-pool.jar
4.在beans.xml创建datasource
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<context:annotation-config/>
<context:component-scan base-package="spring"/>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<context:property-placeholder location="jdbc.properties"/>
</beans>
注意:(1).<context:property-placeholder location="jdbc.properties"/>----导入配置文件
5.创建数据库spring_test utf8,utf8-bin
6.在src中创建jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/spring_test
jdbc.username = root
jdbc.password = test
7.创建User类,以及在数据库中建User表(因为不是使用hibernate,所以需要手动建表)
8.创建dao
@Repository("userJdbcDao")
public class UserDao implements IUserDao {
private JdbcTemplate jdbcTemplate;
@Resource
public void setDataSource(DataSource dataSource) {
jdbcTemplate = new JdbcTemplate(dataSource);
}
@Override
public void add(User user) {
jdbcTemplate.update("insert into user(username,password,nickname) value (?,?,?)",
user.getUsername(),user.getPassword(),user.getNickname());
}
@Override
public void update(User user) {
// TODO 自动生成的方法存根
jdbcTemplate.update("update user set username=?,password=?,nickname=? where id=?",
user.getUsername(),user.getPassword(),user.getNickname(),user.getId());
}
@Override
public void delete(int id) {
// TODO 自动生成的方法存根
jdbcTemplate.update("delete from user where id=?",id);
}
@Override
public User load(int id) {
// TODO 自动生成的方法存根
return null;
}
@Override
public List<User> list(String sql) {
// TODO 自动生成的方法存根
return null;
}
}
注意:(1).创建jdbcTemplate,创建setDataSource方法,通过@Resource为jdbcTemplate注入DataSource,然后为该dao写@Repository(被spring管理)
9.写一个测试类:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("/beans.xml")
public class test_jdbc {
@Resource(name="userJdbcDao")
private spring.dao.IUserDao userJdbcDao;
@Test
public void testAdd() {
spring.model.User u = new spring.model.User("tangsheng","123","唐僧");
userJdbcDao.add(u);
}
@Test
public void testUpdate() {
User user=new User("update", "update", "update");
user.setId(4);
userJdbcDao.update(user);
}
@Test
public void testDelete() {
userJdbcDao.delete(8);
}
}
注意:(1).记得加@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("/beans.xml"),注意斜杆/
(2).创建的是JUnit4,class需要public,方法也需要public
(3).记得注入userJdbcDao