收藏 分销(赏)

异常控制和处理.doc

上传人:pc****0 文档编号:7776316 上传时间:2025-01-16 格式:DOC 页数:11 大小:70KB
下载 相关 举报
异常控制和处理.doc_第1页
第1页 / 共11页
异常控制和处理.doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述
public class ForumExceptionHandler extends ExceptionHandler { Logger log = Logger.getLogger(getClass()); @Override public ActionForward execute(Exception exception, ExceptionConfig config, ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws ServletException { request.setAttribute("exception", exception); log.info(exception, exception); if (exception instanceof AccountException) { return new ActionForward("login", "/form/person/login.jsp", false); } return new ActionForward("exception", "/form/exception.jsp", false); } } public abstract class ForumAction extends DispatchAction { protected Log log = LogFactory.getLog(getClass()); @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { ForumForm forumForm = (ForumForm) form; forumForm.setTitle("轻量级 Java EE 论坛程序"); if (forumForm.getAction() == null || forumForm.getAction().trim().length() == 0) { return this.list(mapping, form, request, response); } return super.execute(mapping, form, request, response); } public abstract ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception; } public class PersonAction extends ForumAction { private IPersonService<Person> personService; /** * 默认方法 返回到注册页面 */ public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // PersonForm personForm = (PersonForm) form; // // List<Person> personList = personService.list(" from Person ", 0, 100, // null); // // request.setAttribute("personList", personList); // // return mapping.findForward("list"); return this.initAdd(mapping, form, request, response); } /** * 显示注册页面 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward initAdd(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注册"); return mapping.findForward("add"); } /** * 显示登录页面 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward initLogin(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户登录"); return new ActionForward("login", "/form/person/login.jsp", false); } /** * 注册 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注册"); Person person = personForm.getPerson(); person.setIpCreated(request.getRemoteAddr()); person.setIpLastActived(request.getRemoteAddr()); person.setDateCreated(new Date()); person.setDateLastActived(new Date()); if (person.getAccount() == null || person.getAccount().trim().length() == 0) { request.setAttribute("message", "请输入帐号"); return this.initAdd(mapping, form, request, response); } if (person.getPassword() == null || person.getPassword().trim().length() == 0 || !person.getPassword().equals(personForm.getPassword())) { request.setAttribute("message", "密码不一致"); return this.initAdd(mapping, form, request, response); } try { personService.create(person); PersonUtil.setPersonInf(request, response, person); request.setAttribute("message", "注册成功"); return new ActionForward("success", "/form/person/success.jsp", false); } catch (Exception e) { request.setAttribute("message", "注册失败,原因:" + e.getMessage()); return this.initAdd(mapping, form, request, response); } } /** * 登录 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward login(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户登录"); Person person = personService.getPerson(personForm.getPerson() .getAccount(), personForm.getPerson().getPassword()); if (person == null) throw new AccountException("用户名密码错误"); PersonUtil.setPersonInf(request, response, person); person.setIpLastActived(request.getRemoteAddr()); person.setDateLastActived(new Date()); personService.save(person); request.setAttribute("message", "欢迎回来"); return new ActionForward("success", "/form/person/success.jsp", false); } /** * 注销 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward logout(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注销"); request.getSession(true).setAttribute(PersonUtil.PERSON_INFO, null); return new ActionForward("success", "/", true); } /** * 查看用户信息 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward view(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("查看用户资料"); Person person = personService.find(Person.class, personForm.getPerson() .getId()); request.setAttribute("person", person); return new ActionForward("view", "/form/person/viewPerson.jsp", false); } public IPersonService<Person> getPersonService() { return personService; } public void setPersonService(IPersonService<Person> personService) { this.personService = personService; } } public class PersonAction extends ForumAction { private IPersonService<Person> personService; /** * 默认方法 返回到注册页面 */ public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // PersonForm personForm = (PersonForm) form; // // List<Person> personList = personService.list(" from Person ", 0, 100, // null); // // request.setAttribute("personList", personList); // // return mapping.findForward("list"); return this.initAdd(mapping, form, request, response); } /** * 显示注册页面 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward initAdd(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注册"); return mapping.findForward("add"); } /** * 显示登录页面 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward initLogin(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户登录"); return new ActionForward("login", "/form/person/login.jsp", false); } /** * 注册 * @param mapping * @param form * @param request * @param response * @return */ public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注册"); Person person = personForm.getPerson(); person.setIpCreated(request.getRemoteAddr()); person.setIpLastActived(request.getRemoteAddr()); person.setDateCreated(new Date()); person.setDateLastActived(new Date()); if (person.getAccount() == null || person.getAccount().trim().length() == 0) { request.setAttribute("message", "请输入帐号"); return this.initAdd(mapping, form, request, response); } if (person.getPassword() == null || person.getPassword().trim().length() == 0 || !person.getPassword().equals(personForm.getPassword())) { request.setAttribute("message", "密码不一致"); return this.initAdd(mapping, form, request, response); } try { personService.create(person); PersonUtil.setPersonInf(request, response, person); request.setAttribute("message", "注册成功"); return new ActionForward("success", "/form/person/success.jsp", false); } catch (Exception e) { request.setAttribute("message", "注册失败,原因:" + e.getMessage()); return this.initAdd(mapping, form, request, response); } } /** * 登录 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward login(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户登录"); Person person = personService.getPerson(personForm.getPerson() .getAccount(), personForm.getPerson().getPassword()); if (person == null) throw new AccountException("用户名密码错误"); PersonUtil.setPersonInf(request, response, person); person.setIpLastActived(request.getRemoteAddr()); person.setDateLastActived(new Date()); personService.save(person); request.setAttribute("message", "欢迎回来"); return new ActionForward("success", "/form/person/success.jsp", false); } /** * 注销 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward logout(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("用户注销"); request.getSession(true).setAttribute(PersonUtil.PERSON_INFO, null); return new ActionForward("success", "/", true); } /** * 查看用户信息 * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward view(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { PersonForm personForm = (PersonForm) form; personForm.setTitle("查看用户资料"); Person person = personService.find(Person.class, personForm.getPerson() .getId()); request.setAttribute("person", person); return new ActionForward("view", "/form/person/viewPerson.jsp", false); } public IPersonService<Person> getPersonService() { return personService; } public void setPersonService(IPersonService<Person> personService) { this.personService = personService; } }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服