struts2的请求扩展名的需求配置和动态调用某个方法配置以及异常处理机制

四、
struts2的请求是否真的需要扩展名,
org.apache.struts2包下的default.properties中配置了struts应用的一些常量
struts.action.extends定义了当前struts应用可以接受的请求扩展名
可以在struts.xml文件中配置这项功能。格式如下

一下配置可以识别扩展名为 .do .action和没有扩展名的请求

ActionSupport
    1)ActionSupport是默认的Action类,当一个action配置中没有classg该属性是默认执行的就是这个类,

这个类里边有个execute方法,默认执行的就是这个方法,返回值就是”success”;
2)在手工完成字段验证,显示错误消息,国际化情况下,可以继承ActionSuppport,
五、result一共有2个属性,好友一个是type:表示结果的相应类型,
result的type属性值在struts-default包的result-types节点的name属性中定义,常用的
有: dispatcher:(默认的)转发。同servlet中的转发
redirect:重定向
redirectAction:重定向到一个Action
注意:通过redirect的相应类型,也可以便捷的实现redirectAction的功能

testAction
/pdsu

OR
/pds/testAction.do

chain:转发到一个Action
注意:不能通过type=”dispactcher”的方式转发到一个Action
只能是:
testAction
/pdsu

不能是:
/pds/testAction
六、动态调用某个方法。
首先说明在struts2中对于动态调用的这项功能是关闭的。
我们可以将其打开。在core核心包里边有一个ort.apache.struts2下边有一个default-properties配置文件。在此文件中有如下配置
struts.enable.DynamicMethodInvocation = false 说明该功能是关闭的我们需要在struts.xml文件中配置将其打开。代码如下

<!-- 打开动态调用方法的开关 -->


实例请求的url地址如下
http://localhost:8080/struts2-3/testdynameic!update强调内容**
动态方法调用的机制就是在struts.xml文件里配置之后相应的内容(允许动态方法调用)之后再地址栏中url地址后通过加上”!方法名称”即可完成动态方法的调用。
实例:
1.建立一个类Dynamic,写入两个方法。如:save 和update方法
2.配置action
/testsuccess.jsp
/testsuccess2.jsp

3.启动tomcat服务器,通过建立请求即可请求到相应的地址栏之后,可以通过!改变Action中类的执行方法即可控制请求的返回页面
七、异常处理机制
在struts.xml文件的action标签里可以配置异常处理参数
class属性值为发生异常处理的类

/exception.jsp
同时可以在页面中获取错误信息
<%@ taglib prefix=”s” uri=”struts-default”%>

//可以获取错误信息栈
可以显示错误原因
八、通配符方式可以配置action
eg:

{1}.jsp


以上就是一个例子,言简意赅,一目了然!希望对大家有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

uniquewdl

匆忙的人生,总有你喜欢的文章

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值