Struts2.1学习笔记_04

使用多个struts配置文件:
在struts中加入<include file="xx.xml"/>来引入配置文件

如果在其他包下,使用路径/xx/xx/xx.xml

 

配置默认的action
在package的namespace下,如果没有找到这个aciton就会报错,如果在package中加入配置:
<default-action-ref name="xxx"/>
name值为在此package中的一个aciton的name。
这样,没有找到action时,会转到defaultaction。

 

Result类型
如:
<result type="dispatcher">
     /xx.jsp
</result>
不写,默认为dispatcher。跳转到另一个jsp。
其他:
redirect,客户端跳转。
chain跳转到另一个aciton,访问action时不要加"/",如果action在另外一个namespace里,应该这样写:
<result type="chain">
<param name="actionName">xxxx</param>
<param name="namespace">/xxx</param>
</result>

 

redirectAction,客户端跳转到action。
freemarker 模板框架。
httpheader发送头信息。
stream下载
velocity 模板框架。
xslt 与xml相关的修饰。
plaintext 把页面jsp源码发送到客户端。
tiles 分块指定页面。

 

全局结果集

就是在所有action中,都可以返回到这个结果集。在配置文件的package中定义:
<global-results>
    <result name="main">/main.jsp</result>
</global-results>

如果一个package中的action想访问另一个package中的全局结果集,可以让这个package集成一个包,而每个package默认继承struts-default

。父package必须继承默认struts-default。

 

动态结果集
<result>${xxx}</result>
这是从值栈中取内容,专门用在配置文件中使用的ognl。

 

带参数的结果集

主要用于redirect传值。
<result type="redirect">/xx.jsp?t=${xxx}</result>
这样的方式浏览器会再发送请求到xx.jsp?t=xx,因为直接访问的jsp页面,所以值栈是空的。页面取值可以从:
<s:property value="#parameters.t"/> ActionContext中可以取值。

 

你可能感兴趣的:(jsp,freemarker,框架,struts,velocity)