struts2的配置

来源:互联网 发布:机器人焊接软件 编辑:程序博客网 时间:2024/06/08 08:35

                                                      struts2的配置

1.多配置文件

serlvet如果采用配置文件去配置,我们会发现,如果servlet类写的太多了,web.xml文件会很庞大。没有一个很好的区分方。Struts就解决了这个问题
Struts框架,可以写很多配置文件,这些配置文件在运行时,也可以采用多种方式整合到一起。struts默认只会读取classpath下的struts.xml这个配置文件。
我们可以把所有自己写的struts配置文件,采用包导入的方式,导入到系统默认读取的struts.xml配置文件中。如:下面有三个strust的配置,但是,系统只读struts.xml

在struts.xml文件中,采用下面方法整合
<include file="struts-news.xml"></include>

如果配置文件在某个包下面,导入方法为:
<include file="com/yinhe/struts/xml/struts-news.xml"></include>

注:如果使用include引入xml文件,注意包含的文件中package标签的名称不要重复

2.全局返回结果和局部返回结果

直接在action标签的外部写的result称为全局返回结构,该返回结果可以给所有的action使用。如果既有全局返回结果又有局部返回结果,在该action中,以局部返回结果为主。
全局返回记过声明代码如下:
<global-results>
<result name="error">/error.jsp</result>
</global-results>
注:global-results和default-action-ref标签不要同时出现在同一个package下,不然会报错

3.Result配置

<result name=”” type=””></result>
如果name不填,默认那么的值为”success”
如果type不填,默认type的值为“dispatcher”

4.Type属性常见值

dispatcher类型
默认结果类型,后台使用RequestDispatcher转发请求 (转发到jsp)
redirect类型
后台使用的sendRedirect()将请求重定向至指定的URL (重定向到jsp)
<result name="success" type="redirect">/loginsuccess.jsp</result>
redirectAction类型
主要用于重定向到Action (重定向到action)

<action name="login"class="base.LoginAction">

<result name="success"type="redirectAction">listuser</result>

<result name="fail">/login.jsp</result>

</action>

如果带参数

<action name="login"class="base.LoginAction">

<result name="success"type="redirectAction">

<param name="actionName">listuser</param>

<param name="msg">i love java</param>

<param name="namespace">/</param>

</result>

<result name="fail">/login.jsp</result>

</action>

或缩写

<action name="login"class="base.LoginAction">

<result name="success"

 type="redirectAction">listuser.action?msg=hi</result>

<result name="fail">/login.jsp</result>

</action>

或者可以使用ongl表达式传值

<action name="login"class="base.LoginAction">

<result name="success"

 type="redirectAction">listuser.action?msg=${uname}</result>

<result name="fail">/login.jsp</result>

</action>


原创粉丝点击