spring与jdbc
一、用Spring中的JdbcTemplate操作数据库
1、创建web动态项目,导入基本包、c3p0连接池包、数据库包、事务包(jdbc\tx)
2、创建User对象,属性与数据库一一对应
public class User {
private Integer u_id;
private String u_username;
private String u_password;
}
3、创建UserDao接口,以及实现其接口,在接口中使用JdbcTemplete.
public interface UserDao {
//根据id查找用户
User selectUserById(Integer id);
}
public class UserDaoImpl implements UserDao {
private static ComboPooledDataSource dataSource;
static {
try {
//配置c3p0数据库
dataSource = new ComboPooledDataSource();
dataSource.setDriverClass("com.mysql.jdbc.Driver");
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/ssm_spring");
dataSource.setUser("root");
dataSource.setPassword("root");
} catch (PropertyVetoException e) {
e.printStackTrace();
}
}
@Override
public User selectUserById(Integer id) {
JdbcTemplate jTemplate = new JdbcTemplate(dataSource);
String sql = "select * from user where u_id=?";
User user = jTemplate.queryForObject(sql,
new RowMapper<User>() {
@Override
public User mapRow(ResultSet rSet, int index) throws SQLException {
User user = new User();
user.setU_id(rSet.getInt("u_id"));
user.setU_username(rSet.getString("u_username"));
user.setU_password(rSet.getString("u_password"));
return user;
}
}, id);
return user;
}
}
4、创建测试类
public class test {
@Test
public void test1() {
UserDao uDao = new UserDaoImpl();
User user = uDao.selectUserById(0);
System.out.println(user);
}
}
5、总结:简单的spring中的jdbcTemplate测试例子就写好了,总体其实跟spring_servlet有点相似,所以理解起来也不算困难。
二、JdbcTemplate的增删改查操作
1、修改UserDao接口;
public interface UserDao {
//增
void saveUser(User user);
//删
void deleteUserById(Integer id);
//改
void updateUser(User user);
//查
//根据id查找用户
User selectUserById(Integer id);
//查询所有用户列表
List<User> selectAllUser();
//查询用户数量
Integer selectUserCount();
}
2、实现UserDaoImpl
public class UserDaoImpl implements UserDao {
private static ComboPooledDataSource dataSource;
JdbcTemplate jTemplate = new JdbcTemplate(dataSource);
static {
try {
//配置c3p0数据库
dataSource =