SSH中异常处理
异常处理
在实际项目开发中异常是需要统一处理的,
截获OrgManagerImpl中抛出的信息,要不要都行
利用struts中的处理机制(1.编程处理(手工):try/catch截获异常(这种在统一的时候不用) 2.将异常抛出交给struts自动处理)
1. 手工处理(编程处理)
在action中
//异常处理
try {
orgManager.delOrg(id);
} catch (Exception e) {
//1. 编程式处理 return mapping.findForward("del_fail");
//2. 手工处理
ActionMessages msgs=new ActionMessages();
ActionMessage msg=new ActionMessage("errors.detail",e.getMessage());
msgs.add("detail",msg);
this.saveErrors(request, msgs);
return mapping.findForward("exception");
<forward name="exception" path="/org/exception.jsp"></forward>
2. Struts中自动处理
Action
<action
path="/org"
type="org.springframework.web.struts.DelegatingActionProxy"
异常类型
MessageResources.properties中定义的错误类型
name="orgForm"
scope="request"
parameter="method"
>
<exception key="errors.detail" type="java.lang.RuntimeException" scope="request" path="/org/exception.jsp"></exception>这句就自动处理
<forward name="index" path="/org/index.jsp"></forward>
<forward name="add_input" path="/org/add_input.jsp"></forward>
</action>
此种自动异常处理缺点:如果异常带很多参数,那么自动异常是没办法处理多参数的
3. 不同异常用一个表示(两个不同异常用一个异常框架处理)
定义统一的异常,通常通过构造器来传递参数。
在struts—config.xml中将exception放在全局异常中
struts—config.xml
com.ygp.oa.manager中创建SystemException类,继承RuntimeException类,并通过复写父类建立相关构造器。
(此时throw new SystemException("存在子机构,不允许删除","exception.org.del");可以在MessageResources.properties中定义相关异常)
默认情况下使用struts中异常处理器handler,
<global-exceptions>
<exception key="errors.detials"
type="com.ygp.oa.manager.SystemException"
path="/common/exception.jsp"
scope="request"
handler="com.ygp.oa.web.actions.SystemExceptionHandler"
>
</exception>
</global-exceptions>
package com.ygp.oa.web.actions;中
public class SystemExceptionHandler extends ExceptionHandler {
public ActionForward execute(
Exception ex, //后台传递过来的exception通过orgaction throw抛出,传来exception
ExceptionConfig ae,//代表exception中的所有配置
ActionMapping mapping,
ActionForm formInstance,
HttpServletRequest request,
HttpServletResponse response)
throws ServletException {
return super.execute(ex, ae, mapping, formInstance, request, response);
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/liusha0007/archive/2009/01/20/3840591.aspx
分享到:
相关推荐
SSH配置详细步骤及异常处理 该文章详细介绍了SSH的配置步骤与工程代码。
SSH异常和日志处理方案.
MyEclipse下SSH配置详细步骤及异常处理
一个经典的ssh框架整合例子,很适合新手,可以看看
SSH配置详细步骤及异常处理 该文章详细介绍了SSH的配置步骤与工程代码。 配置步骤见:http://blog.csdn.net/sipsir/archive/2009/10/23/4721526.aspx 代码下载:http://sipsir.download.csdn.net/
苹果SSH工具,可用于越狱,以及进行IOS系统的恢复操作和异常处理
2.commons-io.jar(commons项目(commons项目就是java中一些常用的公共的组件)的io子项目,是处理异常的) 3.freemarker-2.3.15.jar(支持freemarker的,在webwork中也有) 4.javassist.jar(一个开源的分析、编辑...
三大框架struts2,hibernate,spring 的学习笔记和常见异常的解决方案
2.commons-io.jar(commons项目(commons项目就是java中一些常用的公共的组件)的io子项目,是处理异常的) 3.freemarker-2.3.15.jar(支持freemarker的,在webwork中也有) 4.javassist.jar(一个开源的分析、编辑...
joson-1海面高度异常数据处理源程序
--advice 全局异常处理 --constpool 常量池 --controller 控制器 --admin 管理员相关 --user 用户相关 --dto 数据传输对象 --interceptor 前端请求拦截器 --mapper 数据库操作 --model 数据库对象映射 --...
主要介绍了Java的Struts框架的异常处理方法,Struts是Java的SSH三大web开发框架之一,需要的朋友可以参考下
第3章 异常处理 8 3.1. 当处于主机的BIG-IP突然发生故障时,如何尽快恢复业务? 8 3.2. 如果修改配置以后,导致业务异常如何处理? 8 3.3. 故障诊断时,有时需要用到命令行,如何用命令行登陆BIG-IP? 9 3.4. BIG-IP...
对于这个数据集,我们建立了基于HTTP、HTTPS、FTP、SSH和电子邮件协议的25个用户的抽象行为。Friday-WorkingHours-Afternoon-DDos.pcap_ISCX.csv 2023-02-28 73.55MB Wednesday-workingHours.pcap_ISCX.csv 2023-02-...
对异常服务器进行故障诊断,通过告警灯,诊断版和诊断码进行故障的确认,有 些复杂的故障则由远程SSh进行cpu,磁盘和内存占用的情况査看。有条件的进 行IPMl的管理接口链接査看日志,分析故障。 在确认故障后对保内...
Golang编程 ssh执行上传下载,指令,批处理, 等处理的简单概念型代码, 要求下载人员自行对异常稍作处理