所谓struts声明式异常,就是自己不try catch了,交给struts框架去处理。
步骤:
1.定义一个自己的异常,比如AppException,让它继承RunTimeException,并实现父类的所有构造方法。
比如:
package com.germmyedu.util; public class AppException extends RuntimeException { private static final long serialVersionUID = 1L; public AppException() { super(); // TODO Auto-generated constructor stub } public AppException(String message, Throwable cause) { super(message, cause); // TODO Auto-generated constructor stub } public AppException(String message) { super(message); // TODO Auto-generated constructor stub } public AppException(Throwable cause) { super(cause); // TODO Auto-generated constructor stub } }
2.在struts-config.xml的action中定义一个exception或者定义一个global的exception。
这个exception对应的类就是上面定义的AppException
这个标签的含义是指当程序中碰到AppException时,就转到相应的页面。
<global-exceptions> <exception key="errors.detail" type="com.germmyedu.util.AppException" path="/WEB-INF/jsp/error.jsp" /> </global-exceptions>
3.在error.jsp页面用<html:errors />将异常信息显示出来。
注意:<html:errors />只读error key,而<html:message/>是读的message key.
4.此时如何将显示的异常信息变成红色?
需要用到国际化资源文件中的系统属性,如下:
errors.header=<UL> errors.prefix=<LI><font color='red'> errors.suffix=</font></LI> errors.footer=</UL> errors.detail={0}
相关推荐
在Struts2中,声明式异常处理是其强大的特性之一,它允许开发者通过配置文件来定义不同类型的异常如何被处理,而不是在每个动作类中进行硬编码。这样可以提高代码的可读性和可维护性,同时也方便了异常处理策略的...
Struts2是一个强大的Java web开发框架,它提供了一种声明式异常处理机制,极大地简化了在应用程序中处理异常的方式。本示例代码旨在演示如何在Struts2中定义和使用声明式异常,以及如何访问异常属性。 声明式异常...
声明式异常处理是Struts中的一种特性,允许我们在struts.xml配置文件中定义全局的异常映射,而不是在每个Action类中单独处理。这样可以实现异常处理的统一和标准化,减少代码重复,提高可维护性。声明式异常处理通常...
- **Struts2**:支持注解和XML方式的校验,可以实现声明式校验,减少了代码量并提高了可维护性。 7. 国际化和本地化: - **Struts1**:需要手动配置资源文件,处理相对复杂。 - **Struts2**:提供了一套更直观的...
7. **表单验证**:Struts2提供了强大的表单验证功能,可以在Action类中定义验证规则,或者使用XML配置文件进行声明式验证。 通过这个新闻管理系统,新手可以学习到如何使用Struts2搭建一个完整的web应用,包括控制...
3. **事务管理**:Spring提供声明式事务管理,可以在Service层的方法上添加@Transactional注解,让Spring自动处理事务的开始、提交或回滚。 4. **数据持久化**:Hibernate通过映射Java对象到数据库表,实现了对象的...
4. **事务管理**:Spring提供声明式事务管理,可以在struts-config.xml或action-mappings.xml中配置事务边界,使得在执行数据库操作时自动进行事务控制。 5. **错误和异常处理**:Struts1的全局异常处理可以结合...
它允许开发者以声明式的方式配置应用程序的行为。 4. **拦截器(Interceptor)**:拦截器是Struts2的一个重要特性,它提供了AOP(面向切面编程)的能力。拦截器可以插入到Action调用链中,执行额外的任务,如日志...
6. **事务管理**:Hibernate支持编程式和声明式事务管理。在Struts1中,通常在Action类中处理事务,利用`Session.flush()`和`Session.clear()`控制事务边界。 二、Struts1知识点 1. **MVC模式**:Struts1遵循MVC...
- **配置文件**: Struts2的配置文件(struts.xml)用于定义Action、结果、拦截器栈等,可以实现声明式编程。 **2. Struts2的架构** Struts2的架构基于过滤器(Filter)和Servlet容器。`...
配置文件提供了声明式编程,简化了代码量。 4. **拦截器(Interceptors)**:Struts2的拦截器是AOP(面向切面编程)的一个体现,可以在Action执行前后插入自定义的处理逻辑,如日志记录、权限验证、性能监控等。常见...
Struts可以通过编程式或声明式的方式来管理事务,确保数据的一致性。 8. **错误与异常处理**: Struts提供了错误和异常处理机制,当出现错误或异常时,可以跳转到特定的错误页面,或者显示错误消息。 9. **Struts...
- **声明式异常处理**:通过配置文件来处理异常,提高代码的健壮性。 #### 8. 国际化支持 - **资源文件**:通过定义资源文件来支持多语言。 - **格式化**:根据不同的语言和地区设置,自动调整日期、数字等格式。 ...
5. **事务管理**:Struts结合Spring框架可以实现声明式事务管理,使得事务控制更加简单和健壮。 综上所述,Struts作为Java Web开发的重要框架,其核心在于提供了一种结构化的方式来组织和管理Web应用,使得开发者...
8. **异常处理**:Struts 2提供了一种声明式和编程式的异常处理机制。通过全局异常映射,可以统一处理特定类型的异常,提高代码的可读性和可维护性。 9. **国际化与本地化**:Struts 2支持多语言环境,开发者可以...
这些配置可以声明式地指定Action的映射、参数、结果类型等,增强了灵活性。 4. **拦截器(Interceptor)**:拦截器是Struts2的一个重要特性,它允许在Action执行前后插入自定义逻辑。比如,可以使用拦截器进行权限...
Spring与Hibernate整合时,可以利用其声明式事务管理,简化事务处理代码。 **Hibernate框架**: Hibernate是一个对象关系映射(ORM)框架,它允许开发者用Java对象来操作数据库记录,减少了手动编写SQL的繁琐工作。...
这些核心库的引入,使得开发者可以充分利用Struts2的特性,如声明式异常处理、国际化支持、插件扩展性、以及强大的表单验证和数据绑定等功能。在实际开发中,还需要根据具体需求引入其他的库,如数据库连接池、JSON...