首页 > 代码库 > springMVC之异常处理
springMVC之异常处理
1. 自定义一个异常类: UserException.java
public class UserException extends RuntimeException { private static final long serialVersionUID = 1L; public UserException() { super(); } public UserException(String message, Throwable cause) { super(message, cause); } public UserException(String message) { super(message); } public UserException(Throwable cause) { super(cause); } }
2. 使用用户登录的例子: UserController.java
假定用户名不存在或用户密码错误系统会抛出异常, 并跳到error.jsp页面
@Controller @RequestMapping("/user") public class UserController { // 使用map模拟数据库 private Map<String, User> userMap = new HashMap<String, User>(); public UserController() { userMap.put("zhangsan", new User("zhangsan", "123")); userMap.put("lishimin", new User("lishimin", "456")); } // 用户登录之异常处理 // 访问方法: http://localhost/springmvc_user/login.jsp @RequestMapping(value=http://www.mamicode.com/"/login", method=RequestMethod.POST)>
3. 配置全局异常处理: user-servlet.xml<!-- 全局异常处理 --> <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> <property name="exceptionMappings"> <props> <prop key="com.zdp.exception.UserException">exception/error</prop> </props> </property> </bean>
4. 错误信息页面: error.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>错误页面</title> </head> <body> 发现错误: ${exception.message} </body> </html>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。