`
xiaoao808
  • 浏览: 43922 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于Struts处理异常框架的小例子

阅读更多

     下午搞了一下Struts处理异常的框架,不错,确实很好用,可以省很多事,闲话暂且不表,进入正题

     首先新建一个项目,然后要做的第一步当然是——添加Struts支持啦~~呵呵。

     找到struts-config.xml文件,如果想配置全局异常处理,则需要在<global-exceptions></global-exceptions>之间设置,如果只想单独为某个Action设置其异常处理,则将设置写在<action></action>之间即可,具体配置很简单,代码如下:

     

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><exception
  
key="unLogin"<!--对应资源文件中的key,用于错误显示-->
  path="/index.jsp"
<!--出错了程序会跳到哪里去.-->
  type="java.lang.Exception" 
<!--捕获异常的类型-->/>

     接下来测试一下吧,写一个登陆页面,提交到某个action里面,当用户名为空时抛出Exception,当然你也可以编写自己的Exception类,然后在配置文件中作相应的修改就可以了。

index.jsp代码如下:

 

 

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><%@ page language="java" pageEncoding="ISO-8859-1"%>

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html lang="true">
  
<head>
    
<html:base />
    
    
<title>index.jsp</title>
  
</head>
  
  
<body><html:errors/>
    
<html:form action="/login" method="post" focus="login">
      
<table border="0">
        
<tr>
          
<td>Login:</td>
          
<td><html:text property="username" /></td>
        
</tr>
        
<tr>
          
<td>Password:</td>
          
<td><html:password property="password" /></td>
        
</tr>
        
<tr>
          
<td colspan="2" align="center"><html:submit /></td>
        
</tr>
      
</table>
    
</html:form>
  
</body>
</html:html>

loginAction代码如下:

 

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 
*/
package com.lc.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.lc.LoginForm;

/** 
 * MyEclipse Struts
 * Creation date: 07-30-2008
 * 
 * XDoclet definition:
 * @struts.action path="/login" name="loginForm" input="/form/login.jsp" scope="request" validate="true"
 * @struts.action-exception key="unLogin" path="/index.jsp"
 
*/
public class LoginAction extends Action {
    
/*
     * Generated Methods
     
*/

    
/** 
     * Method execute
     * 
@param mapping
     * 
@param form
     * 
@param request
     * 
@param response
     * 
@return ActionForward
     * 
@throws Exception 
     
*/
    
public ActionForward execute(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response) 
throws Exception {
    LoginForm loginForm 
= (LoginForm) form;// TODO Auto-generated method stub
    if(loginForm.getUsername()==null||loginForm.getUsername().equals("")){
        
throw new Exception();
    }
    
return mapping.findForward("login");
    }
}

     接下来测试一下吧,异常被捕获了,login.do被重定向到了index.jsp中去,测试结束。

     虽然这是一个很小的例子,但是足以感觉到运用到实际中可以省很多事,项目中异常的处理不再需要无数个try/catch块组合,只需要在xml文件中进行简单设置即可。

分享到:
评论

相关推荐

    struts错误处理机制小例子

    通过这个简单的Struts错误处理小例子,我们可以了解到Struts是如何将错误信息从控制器层传递到视图层,并提供了多种方法来优雅地处理异常。这有助于提高应用程序的健壮性,同时确保用户在遇到问题时能得到清晰的反馈...

    Struts1异常处理

    如果在这个过程中发生异常,Struts框架会捕获这个异常,并根据配置文件中的规则来决定如何处理。 1. **Action类中的异常处理**:在`Action`类中,开发者通常会在方法体内使用try-catch语句块来捕获可能出现的异常。...

    struts2验证框架简单实例

    在Struts2框架中,验证框架是其一个重要组成部分,用于确保输入数据的准确性和完整性,从而防止因无效数据导致的程序异常或错误。本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决...

    Struts2 异常处理的四种获取属性方法

    在Struts2框架中,异常处理是至关重要的一个部分,它确保了应用程序的稳定性和用户体验。Struts2提供了多种方式来捕获和处理异常,帮助开发者优雅地处理程序中的错误情况。以下是Struts2异常处理的四种主要方法,...

    仅使用了struts1框架

    5. **错误和异常处理**:虽然这个例子可能没有包含,但了解如何处理登录失败或其他异常情况也是很重要的。 通过这个简单的项目,初学者可以逐步掌握Struts1框架的基本使用,为后续的复杂应用开发打下基础。同时,这...

    struts&Spring&Hibernate框架小例子

    这个"struts&Spring&Hibernate框架小例子"旨在展示这三个框架如何协同工作,实现MVC(Model-View-Controller)设计模式,以及依赖注入和持久化管理。 Struts是MVC框架的代表,负责处理HTTP请求,控制应用程序流程,...

    struts+hibernate框架的简单例子

    这个"struts+hibernate框架的简单例子"可能是提供了一个简单的Web应用示例,包括了Struts的请求处理和视图展示,以及Hibernate的数据库操作。对于初学者来说,这样的例子有助于理解这两个框架如何协同工作,为实际...

    struts2的异常处理机制

    Struts2是一个流行的Java web框架,它提供了强大的异常处理机制,使得开发者能够优雅地管理和展示在应用程序中出现的错误和异常。以下是对Struts2异常处理机制的详细说明: 1. **异常处理流程**: 当一个Action...

    Struts 声明式异常处理和个性化异常处理

    声明式异常处理和个性化异常处理是Struts框架中的两个重要特性,它们帮助开发者更有效地管理和处理应用程序可能出现的异常情况,从而提高应用的健壮性和用户体验。 声明式异常处理是Struts通过配置文件(如struts-...

    一个关于struts小例子

    这个"一个关于Struts小例子"的压缩包可能是为了帮助初学者理解并实践Struts框架的基本用法。让我们深入了解一下Struts的核心概念、工作原理以及如何在实际项目中应用。 Struts是一个基于Model-View-Controller(MVC...

    struts小例子

    8. **异常处理**:Struts框架提供了一种统一的异常处理机制,允许开发者定义全局或特定Action的异常处理策略。 9. **Tiles框架集成**:Struts可以与Tiles框架集成,用于创建可重用的页面布局,提高开发效率。 10. ...

    struts的各种功能小例子

    Struts是一个开源的Java EE框架,它主要用于构建和维护可扩展且易于管理的Web应用程序。...通过学习和实践Struts的各种功能小例子,你可以逐步揭开它的神秘面纱,熟练掌握其使用方法,提升自己的开发技能。

    Struts2基础框架搭建

    Struts2框架的核心是Action,它负责处理用户的请求,并通过业务逻辑组件来完成具体的操作。Action与Service层交互,将数据传递给Model,然后由Model处理业务逻辑。处理完成后,Action会将结果数据传递给视图层,通常...

    struts2完整例子

    9. **异常处理**:Struts2提供了一套完善的异常处理机制,通过`&lt;global-exception-mappings&gt;`和`&lt;package&gt;`内的`&lt;exception-mapping&gt;`标签,可以定义全局或局部的异常处理策略。 10. ** strut2-helloworld 示例**:...

    java框架struts2 简单完整实例

    Struts2预定义了许多拦截器,如`params`用于参数预处理,`exception`处理异常等。你可以根据需求自定义拦截器,并在struts.xml中配置。 八、总结 本实例是一个基础的Struts2应用,展示了如何创建一个简单的Action,...

    struts的一个例子

    此外,Struts还有其他重要特性,如国际化、异常处理、Tiles组件用于页面布局,以及Struts2的拦截器、OGNL表达式语言等。学习Struts有助于理解MVC设计模式,为后续学习其他Web框架(如Spring MVC)打下坚实基础。 ...

    struts2 -2.3.15.3-验证框架简单实现mode

    Struts2是一个非常流行的Java Web开发框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了企业级应用程序的开发流程。在Struts2的2.3.15.3版本中,集成的验证框架是其核心功能之一,帮助开发者确保用户...

    struts例子

    7. **异常处理**:Struts的异常处理机制允许开发者定义全局的错误处理策略,可以捕获和处理Action执行过程中的异常。 8. **拦截器(Interceptors)**:Struts 2引入了拦截器的概念,它们在Action执行前后运行,可以...

    wap与struts2开发的小例子

    "wap与struts2开发的小例子" 这个标题表明这是一个关于使用WAP(无线应用协议)和Struts2框架进行开发的实际示例项目。WAP是移动设备上的一种通信协议,而Struts2是Java Web开发中的一个流行MVC框架,用于构建可维护...

    Struts+Spring+Hibernate框架搭建

    ### Struts+Spring+Hibernate框架搭建 #### 1. SSH整合理念 在现代软件开发中,特别是Java Web应用开发领域,采用多个框架协同工作已成为一种常见的做法。这种做法旨在通过不同框架的优势互补来构建高性能、高灵活...

Global site tag (gtag.js) - Google Analytics