前言
基于上篇文章的续集
一、使用步骤
1.连接数据库
private Connection getConnection(){
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/movie-manager?useUnicode=true&characterEncoding=utf8","root","root");
return conn;
} catch (ClassNotFoundException | SQLException e ) {
e.printStackTrace();
}
return null;
}
2.添加用户数据
public int addUser(UserinfoEntity userinfo){
try {
String sql="insert into mm_userinfo values(null,?,?,?,?,1,?,?,null,null)";
PreparedStatement pstm=conn.prepareStatement(sql);
pstm.setObject(1,userinfo.getUsername());
pstm.setObject(2,userinfo.getPassword());
pstm.setObject(3,userinfo.getNickname());
pstm.setObject(4,userinfo.getAvatar());
pstm.setObject(5,userinfo.getCreateAdmin());
pstm.setObject(6,userinfo.getCreateTime());
return pstm.executeUpdate();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return 0;
}
3.修改用户数据
public int updateUser(UserinfoEntity userinfo){
String sql="update mm_userinfo set nickname=?,avatar=?,update_admin=?,update_time=? where id=?";
try {
// setObject可以自动识别SQL中的数据类型,对大量数据量节约的时间是非常可观的
PreparedStatement pstm=conn.prepareStatement(sql);
pstm.setObject(1,userinfo.getNickname());
pstm.setObject(2,userinfo.getAvatar());
pstm.setObject(3,userinfo.getUpdateAdmin());
pstm.setObject(4,userinfo.getUpdateTime());
pstm.setObject(5,userinfo.getId());
return pstm.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return 0;
}
4.删除用户数据
public int deleteUser(int id){
String sql="delete from mm_userinfo where id=?";
try {
PreparedStatement pstm=conn.prepareStatement(sql);
pstm.setInt(1,id);
return pstm.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return 0;
}
5.查询用户数据
用泛型集合去保存数据
public List<UserinfoEntity> getUserList(){
List<UserinfoEntity> userList=new ArrayList<>();
try {
String sql="select * from mm_userinfo";
PreparedStatement pstm = conn.prepareStatement(sql);
ResultSet rs=pstm.executeQuery();
while(rs.next()){
UserinfoEntity userinfo=new UserinfoEntity();
userinfo.setId(rs.getInt("id"));
userinfo.setUsername(rs.getString("username"));
userinfo.setPassword(rs.getString("password"));
userinfo.setNickname(rs.getString("nickname"));
userinfo.setAvatar(rs.getString("avatar"));
userinfo.setStatus(rs.getInt("status"));
userinfo.setCreateAdmin(rs.getInt("create_admin"));
userinfo.setCreateTime(rs.getDate("create_time"));
userinfo.setUpdateAdmin(rs.getInt("update_admin"));
userinfo.setUpdateTime(rs.getDate("update_time"));
userList.add(userinfo);
}
} catch (SQLException e) {
e.printStackTrace();
}
return userList;
}
二、相关的实体类
BaseEntity.java
存放的是几个实体类中都共有的属性,作为基类,让实体类作为子类继承基类。
UserinfoEntity.java
UserinfoDao.java
总结
本人也在学习ing,可能又看不懂的地方,写篇章为了本人以后方便复习使用。