* 有问题可以参加Java技术交流群:839366464
* SpringJDBC模块是解决持久层CRUD操作,是对JDBC的一个简单封装,类型于DBUtils工具。
* JdbcTemplate 开发
* 添加依赖
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.16</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
* 测试
@Test
public void test11(){
// 1 构建JdbcTemplate模板
JdbcTemplate jdbcTemplate=new JdbcTemplate();
// 2 构建连接池(Spring 内置的数据库连接池)
DriverManagerDataSource dataSource=new DriverManagerDataSource();
dataSource.setUrl("jdbc:mysql://localhost:3306/hx01?characterEncoding=utf-8");
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUsername("root");
dataSource.setPassword("root");
jdbcTemplate.setDataSource(dataSource);
String sql="SELECT id,username,psw,sex FROM USER";
jdbcTemplate.query(sql, new RowCallbackHandler() {
@Override
public void processRow(ResultSet resultSet) throws SQLException {
int id=resultSet.getInt(1);
String username=resultSet.getString(2);
String psw = resultSet.getString(3);
char sex=resultSet.getString(4).charAt(0);
System.out.println(id+":"+username+":"+psw+":"+sex);
}
});
}
* Spring 集成JdbcTemplate(体验)
* 复习c3p0(数据库连接池)
* http://www.cnblogs.com/ygj0930/p/6405861.html
* 添加依赖(数据库连接池c3p0)
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
/**
* @author xiaozhao
*/
public class UserDaoImpl implements UserDao {
private JdbcTemplate jd;
public JdbcTemplate getJd() {
return jd;
}
public void setJd(JdbcTemplate jd) {
this.jd = jd;
}
@Override
public void addUser(User user) {
String sql="INSERT INTO USER(username,psw,sex) VALUES(?,?,?)";
Object[] params=new Object[]{user.getUsername(),user.getPsw(),user.getSex()+""};
jd.update(sql,params);
}
@Override
public void sayHello() {
System.out.println("sayHello");
}
}
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/hx01?characterEncoding=utf-8
uname=root
password=root
<context:property-placeholder location="classpath:dbconfig.properties" file-encoding="utf-8"/>
<bean id="c3p0" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="jdbcUrl" value="${url}"></property>
<property name="user" value="${uname}"></property>
<property name="password" value="${password}"></property>
<property name="driverClass" value="${driver}"></property>
</bean>
<bean id="jd" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="c3p0"></property>
</bean>
<bean id="userDao" class="com.hx.hx02.dao.UserDaoImpl">
<property name="jd" ref="jd"></property>
</bean>
@Test
public void test12(){
ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
UserDao userDao = (UserDao) context.getBean("userDao");
User user=new User();
user.setUsername("xiaojjj");
user.setPsw("123123");
user.setSex('男');
userDao.addUser(user);
System.out.println("添加成功");
}