package com.bysj.controller; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.SessionAttributes; import com.bysj.po.Admin; import com.bysj.service.AdminService; import com.bysj.utils.UserException; @Controller @SessionAttributes("username") public class SystemController { @Resource AdminService adminService; @RequestMapping(value="/login",method=RequestMethod.GET) public String login(Model model) { model.addAttribute(new Admin()); return "login"; } @RequestMapping(value="/login",method=RequestMethod.POST) public String login(@Validated Admin admin,BindingResult br,Model model,HttpServletRequest request,HttpSession session) throws Exception { if(br.hasErrors()) { return "login"; } if (!adminService.checkLogin(admin)) { request.setAttribute("error", java.net.URLEncoder.encode(adminService.getErrMessage())); return "error"; } //session.setAttribute("username", admin.getUsername()); model.addAttribute("username", admin.getUsername()); return "main"; //return "redirect:/user/users"; } @RequestMapping("/logout") public String logout(Model model,HttpSession session) { model.asMap().remove("username"); session.invalidate(); return "redirect:/login"; } @RequestMapping(value="/changePassword",method=RequestMethod.POST) public String ChangePassword(String oldPassword,String newPassword,String newPassword2,HttpServletRequest request,HttpSession session) throws Exception { if(oldPassword.equals("")) throw new UserException("请输入旧密码!"); if(newPassword.equals("")) throw new UserException("请输入新密码!"); if(!newPassword.equals(newPassword2)) throw new UserException("两次新密码输入不一致"); String username = (String)session.getAttribute("username"); if(username == null) throw new UserException("session会话超时,请重新登录系统!"); Admin admin = adminService.findAdminByUserName(username); if(!admin.getPassword().equals(oldPassword)) throw new UserException("输入的旧密码不正确!"); try { adminService.changePassword(username,newPassword); request.setAttribute("message", java.net.URLEncoder.encode( "密码修改成功!", "GBK")); return "message"; } catch (Exception e) { e.printStackTrace(); request.setAttribute("error", java.net.URLEncoder .encode("密码修改失败!","GBK")); return "error"; } } }
![](https://static.zuidaima.com/resource/img/heart_ico.png)
星予宝藏666 LV6
2023年6月7日
hwz050059 LV1
2023年5月30日
zcx12345678 LV6
2023年5月29日
不足挂齿 LV2
2023年2月1日
and123456 LV11
2022年7月15日
stdtta LV8
2022年6月28日
huyyyyy LV8
2021年12月24日
1727779658 LV7
2021年12月20日
1178995129 LV6
2021年12月12日
wanglinddad LV54
2021年12月7日
![](https://static.zuidaima.com/resource/img/cattle_ico.png)
pangzhihui LV12
4月11日
2131234536546 LV7
3月31日
1437047954
3月7日
暂无贡献等级
xwh2000 LV2
3月5日
duoduo1234 LV2
1月15日
XiaoSong888 LV2
1月10日
Camellia-while LV1
1月2日
xiaomii LV3
2023年12月15日
limenghaoqwer LV2
2023年11月27日
wwewww LV4
2023年11月2日