Struts2项目实战 微云盘(八):Action异常处理
来源:互联网 发布:Ubuntu系统更改ip地址 编辑:程序博客网 时间:2024/04/24 21:01
一、本节说明
进入github下载该项目
进入github查看该项目的配置指南
本节是这个项目的最后一篇博文了,本节主要介绍Action的异常处理以及项目中出现的问题
二、Action的异常处理
1.直接在Action使用try..catch语句
类似这种
@Override public String execute(){ try { //各种处理逻辑 } catch (Exception e) { e.printStackTrace(); } return LOGIN; }
2.声明式异常处理
第一种方式是完全可行的,但是如果Action非常多呢,一个一个的捕获异常是不是很麻烦呢?
所以可以在struts.xml配置异常以及处理结果
<!-- 定义全局结果映射 --><global-results> <result name="exceptionResult">/WEB-INF/content/exception.jsp</result></global-results><!-- 定义全局异常映射 --><global-exception-mappings> <exception-mapping exception="java.lang.Exception" result="exceptionResult" /></global-exception-mappings>
就这么几行就可以处理该包下所有的Action的异常了,当Action有异常时会跳转到exception.jsp,并且输出堆栈信息。
三、项目中遇到的问题
1.要重视异常
在做添加文件夹功能的时候,ajax请求DirAction后不回调success方法,折腾了好长时间才想起可能发生了错误(现在想想感觉好傻),然后添加了错误回调,找到了错误的原因。
2.项目还有不足
这个项目还有很多不足,比如注销功能没有实现、用户登陆后还可以进入登录页面。当然通过上面的介绍再去实现这两个功能也很简单。
注销功能的实现:定义LogoutAction清除用户保存在session中的信息,配置LogoutAction。
第二个问题可以使用拦截器实现,在项目中的cn.lzf.Interceptor包下有一个AuthorityInterceptor就是权限拦截器,在struts.xml文件中定义了一个权限拦截器,如果想为哪个Action添加权限检测功能只需要为action配置一个拦截器引用就可以了。
3.结语
该项目到此就彻底结束了,如果对本项目感兴趣可以到github下载本项目,地址见本节说明中,下载本项目后如果导入myeclipse中有问题可以查看配置文档,地址见本节说明。
- Struts2项目实战 微云盘(八):Action异常处理
- struts2 action异常处理
- Struts2异常处理机制的使用(八)
- Struts2异常处理之在Action中捕获异常
- Struts2 声明式异常处理(单一action异常处理和全局性质异常处理)
- spring boot项目实战:异常处理
- struts2 与 spring 使用aop处理Action异常
- Struts2中Action内的两种异常处理方式
- Struts2 的action异常
- Struts2项目实战 微云盘(一):项目分析
- Struts2项目实战 微云盘(二):项目结构
- Struts2(七)---异常处理
- Struts2 action链式处理
- struts2 action处理ajax
- Struts2 Action处理
- java web项目异常处理办法(基于struts2的项目)
- 异常处理机制 --- 相知篇 (八)
- C++基础知识(八)例外、异常处理
- Linux那些事(3)-Linux文本与图形界面详解
- Cannot find autoconf
- MA8601|MA8608|HUB方案|中文设计|旺玖一级代理|奇岩代理商
- log4j日志文件在java+maven工程中的使用
- 多维数组做函数参数的退化
- Struts2项目实战 微云盘(八):Action异常处理
- SQL-limit
- POJ-2407 欧拉函数
- 数据库基本理论
- Android UI 之 我的页面 圆形图片+通用item封装(简化代码量)
- @SuppressWarnings注解
- CodeChef
- 线段树基本
- 求最长子序列模板