Struts03-struts配置
来源:互联网 发布:单片机的输出电压多大 编辑:程序博客网 时间:2024/05/18 03:39
一.struts2配置
注意1:
在web.xml文件中,struts的核心过滤器为:
<!-- 引入structs核心过滤器 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter>
如果想引入其他过滤器,要放在struts的核心过滤器的上面。
注意2:
servlet可以和structs一起使用,但是在:
<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
中,struts对你访问的所有资源都进行了处理,所以直接用servlet会有问题,所以可以对struts限定。
1. struts2的action开发的几种方式
方式1:继承ActionSupport
extends ActionSupport
如果用struts的数据效验功能,必须继承此类!
方式2:实现Action接口
public class UserAction3 implements Action {
// Action中业务处理方法
public String login() {
System.out.println("UserAction.login()");
return "success";
}
@Override
public String execute() throws Exception {
return null;
}
// Action中业务处理方法
public String login() {
System.out.println("UserAction.login()");
return "success";
}
@Override
public String execute() throws Exception {
return null;
}
}
方式3:不继承任何类,不实现任何接口
2.通配符
通配符:
在struts配置信息中,可以用*与{1}可以优化配置!
<action name="user_*" class="com.demo.struts_config.Useraction" method="{1}"> </action>
3.struts中路径匹配原则
4.struts常量
struts默认采用的编码是utf-8:
Struts中默认访问后缀:
Struts1中默认访问后缀是*.do*Struts2中默认访问后缀是*.action*
如何修改默认访问后缀:
Struts2的.action访问后缀在哪里定义?
在文件Struts-core-2.3.jar/org.apache.struts/default.properties
中找到:
struts.action.extension=action,,- 在struts.xml中通过常量修改
指定访问后缀为action/do/没有访问后缀都可以
<constant name="struts.action.extension"> value="action,do,"></constant>
value="action,do," 访问后缀:action/do/不带后缀
value="action,do" 访问后缀:action或do
value="action,do" 访问后缀:action或do
value="action" 只能是action
动态方法调用语法:
actionName+!即为动态调用,如:
动态方法调用: http://locahost:8080/struts02/user!login
<action name="user" class="cn.itcast.b_config2.UserAction">
<result name="success">/index.jsp</result>
</action>
<result name="success">/index.jsp</result>
</action>
5.struts2的全局配置、配置的各项默认值
1.
配置全局跳转视图
<!--配置全局跳转视图 --> <global-results> <result> name="success">/index.jsp</result> </global-results>> <action name="user_*" class="com.demo.struts_config.Useraction" method="{1}"> </action> <action name="test" class="com.demo.struts_config.Testaction" method="execute"> <!--返回结果标记success对应的页面在当前页面中没有配置,所以会去找全局配置 --> </action>
其中全局跳转视图一定要放在action的上面不然不满足dtd的语法。
2.配置各项默认值
如果action中方法是execute则method可以不用写。
<!-- 配置各项默认值 --> <!-- name 只配置了访问路径名称 class 默认执行的action在struts-default有配置 <default-class-ref class="com.opensymphony.xwork2.ActionSupport" /> method 默认为execute 默认的方法execute返回值为success,对应的页面去全局视图找。 --> <action name="test"></action><!-- 什么情况不配置class? 即处理的aciton --> <!-- 答案: 当只是需要跳转到WEB-INF下资源的时候。 --> <action name="test2"> <result name="success" >/WEB-INF/index.jsp</result> </action>
不能用重定向,重定向访问不到web-inf目录下。
(地址虽然正确,但是tomcat拦截了,不让外部访问web-inf目录。)
0 0
- Struts03-struts配置
- Day43-Struts03
- struts学习---配置struts
- struts-配置struts
- struts配置
- Struts配置
- struts配置
- Struts配置
- 配置struts
- struts配置
- 配置Struts
- Struts配置
- struts 配置
- struts配置
- struts配置
- struts配置
- 配置Struts
- struts 配置
- 最详细的Log4j使用教程
- 【设计模式】合成复用原则
- 算法导论之2-3思考题
- oracle sql语句优化
- uva112 Tree Summing
- Struts03-struts配置
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十四)
- 剑指offer第二十九题【最小的K个数】c++实现
- hadoop-1.2.0的IPC源码分析
- JAVA类型优先级,以决定不同类型计算后的类型
- iOS 刷机教程
- POJ-1995 Raising Modulo Numbers
- Ubuntu中将media挂载到home的方法
- 1007. 素数对猜想 (20)