后台管理系统-用户模块
用户增加功能:
-
servlet
- 通过 req.getParameter(“String string”) 获取前端数据
- 封装到 UserVo (七个属性):
- username
- password
- phone
- gender
- birthday
- enable
- 通过UserService将UserVO传递到后台进行处理
- Service
- 复制UserVO到UserModel对象
- 调用UserDao中的add方法
- UserDao.add 返回count表示添加的行数
- 将count赋值给 ResultDTO
- 将ResultDTO返回UserAddServlet
- resp.getWrite.println(JSONObject.toJSONString(resultDTO))打印添加结果
-
用户修改功能
-
servlet获取前端数据 req.getParameter 方法
-
封装到userVO(七个属性)
- id
- username
- phone
- gender
- birthday
- enable
-
通过service传递到后台处理
ResultDTO resultDTO = userService.update(userVO);
-
将userVO复制到userModel,Dao层使用userModel作为参数调用update方法
int count = userDao.update(userModel);
-
将count赋值给 ResultDTO
-
将ResultDTO返回UserAddServlet
-
resp.getWrite.println(JSONObject.toJSONString(resultDTO))打印添加结果
-
-
用户修改密码
-
servlet获取前端数据 req.getParameter 方法
-
封装到userVO(三个属性)
- id
- password //旧密码,用于验证,只有旧密码正确才能更改
- newpassword //新密码
-
通过service传递到后台处理
ResultDTO resultDTO = userService.updatePassword(userVO);
-
将userVO复制到userModel,Dao层使用userModel作为参数调用findByIdAndPassword方法,查询输入的密码是否正确
UserModel model = userDao.findByIdAndPassword(userModel);
-
如果查询出来model不为空(密码正确),对userModel进行更新密码,
userModel.setPassword(userVO.getNewPassword());
-
调用updatePassword方法进行密码更改
int count = userDao.updatePassword(userModel);
-
赋值resultDTO的count属性,前端打印resultDTO
-
-
用户查询
-
通过id查询
-
获取前端id
String id = req.getParameter("id");
-
赋值到vo
-
service处理
-
复制
-
dao层sql查询(JDBC)
String sql = "select * from user where id = '" + userModel.getId() + "'"; ResultSet resultSet = JDBC.query(sql);
-
resultSet解析出userModel
通过resultSet.getString(“columnLabel”)方法获取关键字值
while (resultSet.next()) { model = new UserModel(); model.setUsername(resultSet.getString("username"));
-
dao传递model值给service
-
将查询结果model赋值给resultDTO
resultDTO.setData(model);
-
打印resultDTO
-
-
-
查询所有
- service调用dao层的findAll方法返回一个userModel类型集合
- 将集合赋值给resultDTO的data属性
- 打印resultDTO
-
-
用户删除
-
servlet获取前端传来的id值,封装到vo
-
service处理vo对象
- 将vo对象复制为model对象
- 将model对象传递给dao
-
dao通过model删除数据库中符合要求的对象
String sql = "DELETE FROM `user` WHERE (`id` = '" + userModel.getId() + "')"; return JDBC.update(sql);
-
servlet打印resultDTO,resultDTO的count字段表示sql语句影响的行数
-