任务目标
通过本次课的学习,能够完成对数据库中数据表的修改操作
实现步骤
1.创建JavaBean
用增加操作的JavaBean
2.创建工具类
用增加操作的工具类
3.创建DAO
使用上一节增加操作创建的DAO,在上一节查询的UsersDao中增加修改方法
// 修改用户
public boolean update(User user) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
// 获得数据的连接
conn = JDBCUtils.getConnection();
// 发送SQL语句
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String birthday = sdf.format(user.getBirthday());
String sql = "UPDATE users set name=?,password=?,email=?,birthday=? WHERE id=?";
// 获得Statement对象
stmt = conn.prepareStatement(sql);
stmt.setString(1,user.getUsername());
stmt.setString(2,user.getPassword());
stmt.setString(3,user.getEmail());
stmt.setDate(4,new java.sql.Date(user.getBirthday().getTime()));//把java.util.date转为java.sql.date类型
stmt.setInt(5,user.getId());
int num = stmt.executeUpdate();
if (num > 0) {
return true;
}
return false;
} catch (Exception e) {
e.printStackTrace();
} finally {
JDBCUtils.release(rs, stmt, conn);
}
return false;
}
4.创建测试类
public class UpdateUserTest {
public static void main(String[] args) {
// 修改User对象的数据
UserDao usersDao = new UserDao();
User user = new User();
user.setId(4);
user.setUsername("zhaoxiaoliu");
user.setPassword("456");
user.setEmail("zhaoxiaoliu@sina.com");
user.setBirthday(new Date());
boolean b = usersDao.update(user);
System.out.println(b);
}
}