当前位置:编程学习 > JAVA >>

SpringMVC中的异常处理

这是个WebProject,用到的是spring-framework-3.1.1.RELEASE

首先是web.xml
[html] <?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5"  
    xmlns="http://java.sun.com/xml/ns/javaee"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
  <servlet> 
        <servlet-name>user</servlet-name> 
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
        <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
        <servlet-name>user</servlet-name> 
        <url-pattern>/</url-pattern> 
    </servlet-mapping> 
 
    <filter> 
        <filter-name>SpringCharacterEncodingFilter</filter-name> 
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 
        <init-param> 
            <param-name>encoding</param-name> 
            <param-value>UTF-8</param-value> 
        </init-param> 
    </filter> 
    <filter-mapping> 
        <filter-name>SpringCharacterEncodingFilter</filter-name> 
        <url-pattern>/*</url-pattern> 
    </filter-mapping> 
     
    <welcome-file-list> 
        <welcome-file>/WEB-INF/jsp/login.jsp</welcome-file> 
    </welcome-file-list> 
</web-app> 

然后是SpringMVC的配置文件user-servlet.xml
[html]
<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:mvc="http://www.springframework.org/schema/mvc" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans  
                        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
                        http://www.springframework.org/schema/mvc 
                        http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
                        http://www.springframework.org/schema/context  
                        http://www.springframework.org/schema/context/spring-context-3.0.xsd"> 
    <context:component-scan base-package="com.jadyer"/> 
     
    <mvc:annotation-driven/> 
     
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
        <property name="prefix" value="/WEB-INF/jsp/"/> 
        <property name="suffix" value=".jsp"/> 
    </bean> 
</beans> 

下面是用户登录页面//WEB-INF//jsp//login.jsp
[html]
<%@ page language="java" pageEncoding="UTF-8"%> 
<form action="<%=request.getContextPath()%>/user/login" method="POST"> 
    username: <input type="text" name="username"/><br/> 
    password: <input type="password" name="password"/><br/> 
    <input type="submit" value="登录"/> 
</form> 

下面是用户登录失败页面//WEB-INF//jsp//error.jsp
[html]
<%@ page language="java" pageEncoding="UTF-8"%> 
${myex.message} 

下面是用户登录成功页面//WEB-INF//jsp//user//loginSuccess.jsp
[html]
<%@ page language="java" pageEncoding="UTF-8"%> 
welcome: ${loginUser.nickname} 

接下来是用到的实体类User.java
[java]
package com.jadyer.model; 
 
/**
 * User
 * @author 宏宇
 * @create May 12, 2012 1:24:43 AM
 */ 
public class User { 
    private String username; 
    private String nickname; 
    private String password; 
    private String email; 
    /*==四个属性的getter()、setter()略==*/ 
    public User() {} 
    public User(String username, String nickname, String password, String email) { 
        this.username = username; 
        this.nickname = nickname; 
        this.password = password; 
        this.email = email; 
    } 

然后是自定义的异常类UserException.java
[java]
package com.jadyer.exception; 
 
/**
 * UserException
 * @author http://blog.csdn/net/jadyer
 * @create May 12, 2012 6:43:29 PM
 */ 
@SuppressWarnings("serial") 
public class UserException extends RuntimeException { 
    public UserException() { 
        super(); 
    } 
 
    public UserException(String message, Throwable cause) { 
        super(message, cause); 
    } 
 
    public UserException(

补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,