目录
一、修改密码功能实现
1、导入前端素材
2、UserDao接口
3、UserDaoImpl实现类
4、UserService接口
5、UserServiceImpl实现类
6、编写Servlet并注册【实现Servlet复用,提出方法】
7、测试
二、优化密码修改,加入旧密码确认环节【使用Ajax】
1、导入阿里巴巴的fastjson依赖【用于格式转换】
2、后台代码修改
//验证旧密码,session中有用户的密码
public void pwdModify(HttpServletRequest req, HttpServletResponse resp){
Object o = req.getSession().getAttribute(Constants.USER_SESSION);
//拿到前端传入的旧密码
String oldpassword = req.getParameter("oldpassword");
//万能Map
Map<String, String> hashMap = new HashMap<>();
if(o==null){//session失效
hashMap.put("result","sessionerror");
}else if(oldpassword==null){//输入旧密码为空
hashMap.put("result","error");
}else{
//获取session中用户的旧密码
String userPassword = ((User) o).getUserPassword();
if(userPassword.equals(oldpassword)){
hashMap.put("result","true");
}else{
hashMap.put("result","false");
}
}
try {
resp.setContentType("application/json");
PrintWriter writer = resp.getWriter();
//JSONArray 阿里巴巴的JSON工具类
writer.write(JSONArray.toJSONString(hashMap));
writer.flush();
writer.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
三、用户管理实现
思路:
1、导入分页的工具类(util中的pageSupport)
2、导入用户列表页面(userlist.jsp和rollpage.jsp)
获取用户数量
1、UserDao
2、UserDaoImpl
3、UserService
4、UserServiceImpl
获取用户列表
1、UserDao
2、UserDaoImpl
3、UserService
4、UserServiceImpl
获取角色列表
为了职责统一,可以把角色的操作单独放在一个包中,和POJO类对应
1、RoleDao
2、RoleDaoImpl
3、RoleService
4、RoleServiceImpl
Servlet
从前端获取数据
调用业务层方法
跳转视图