zoukankan      html  css  js  c++  java
  • Struts(六)struts2的异常处理与全局异常与结果

    1.exception一般都继承Exception

    例子:

    usernameException.class

    package com.liule.exception;
    
    public class usernameException extends Exception
    {
            private String message;//提示消息
            
            public usernameException(String message)
            {
                super(message);
                
                this.message = message;
            }
    
            public String getMessage()
            {
                return message;
            }
    
            public void setMessage(String message)
            {
                this.message = message;
            }
        
    }

    LoginAction.java(validate一般用于无业务逻辑的)

    public String execute() throws Exception
        {
            if(!"hello".equals(username))
            {
                throw new usernameException("username validate!");
            }
    
            return SUCCESS;
        }

    struts.xml(局部异常)

    <action name="login" class="com.liule.action.LoginAction">
                <exception-mapping exception="com.liule.exception.usernameException" result="usernameerror"></exception-mapping>
                <result name="success">/servlet.jsp</result>
                <result name="usernameerror">/usernameerror.jsp</result>
            </action>

    全局结果(每一个action如果返回这个异常,都可以调用这个结果)

    <global-results>
                <result name="usernameerror">/usernameerror.jsp</result>
            </global-results>

    对于struts.xml文件的结果配置来说,局部优于全局。(就是在全局与局部都存在的情况下,执行局部)

    全局异常

    <global-exception-mappings>
                <exception-mapping result="com.liule.exception.usernameException" exception="usernameerror"></exception-mapping>
            </global-exception-mappings>

    我们既可以在action中定义异常与结果,也可以定义全局的异常与结果,局部是优于全局的,如果定义成全局,那么可以为所有的action所公用,而局部的异常与结果只能被当前的action所独享,不能为其他action所共享。

    http://www.cnblogs.com/codeplus/archive/2011/07/16/2107999.html

  • 相关阅读:
    js代码中引入其他js文件
    SQL Server 创建跨库查詢、修改、增加、删除
    将SQL Server查询导出本地excel(mail发送)
    SQL Server2008 xp_cmdshell啟用
    SQL Server存储过程邮件发送以表格方式发送
    SQL Server2008进程堵塞处理方法
    sql 上舍下舍運用
    怎樣添加設置GridView,CheckBox全選功能
    点击 Button触发事件将GridView1 CheckBox勾选的行添加到GridView2中
    ES6-Proxy,代理
  • 原文地址:https://www.cnblogs.com/liu-Gray/p/4941330.html
Copyright © 2011-2022 走看看