您的位置:首页 > 编程语言 > Java开发

struts2的action的知识点和利用action向页面注入值的操作

2013-07-12 10:55 162 查看
1.      Action的顺序,会先搜索指定名字下的包的action,如果找不到会去搜索默认路径下的包下的action。

2.      如果没有给action设置值,那么action会有一些默认值,如果没有指定class,默认ActionSupport,如果没有指定方法,默认为execute方法,如果没有指定result属性默认是success属性。

 

3. <package
name="aa"
namespace="/test"extends="struts-default">
<action
name="fish">
<result>/index.jsp</result>
</action>
</package>
利用默认值实现一个最简单的跳转

3.      result的各种转发类型:dispatcher(默认);redirect(重定向)这里跳转到jsp但是jsp不能在web-inf路径下;redirectAction,;plainText

 

,

4.      什么是重定向?

 

重定向是一种特殊的页面,它提供一种运作机制,使得人们在输入该名称进入条目或者点击指向该名称的内部链接时,系统能够自动导航到重定向页面内部指定的另一相关页面中,从而实现相关页面可以以多个名称进行访问。举例来说,如果设定了一个指向“澳大利亚”的名称为“澳洲”的重定向页,任何人都可以用“澳洲”这一名称进入到澳大利亚条目中。

 

我们在网站建设中,时常会遇到需要网页重定向的情况: 

  1.网站调整(如改变网页 目录结构); 

  2.网页被移到一个新地址; 

  3.网页扩展名改变(如应用需要把.php改成.Html或.shtml)。 

5.<global-results>这是全局试图

6.<action
name="redfish">
            <result
type="redirect"
>/index.jsp</result>
        </action>

这是重定向的用法。

 

这是Test.Java文件

packagecom.fish;
 
public
class
Test {
privateString
username;
 
publicString getUsername() {
    return
username;
}
 
public
void
setUsername(String username) {
    this.username = username;
}
 
publicString execute(){
 
    return
"success";
}
 
}
 

 
 
这是一个struts2.XML文件
<package
name="fish"namespace="/test"
extends="struts-default">
        <action
name="redfish"
class="com.fish.Test"method="execute">
            <param
name="username">张三</param>//我们可以通过获取节点来设置username的值
            <result 
name="success">
            /MyJsp.jsp
            </result>
        </action>

 

那么我们在jsp里面通过el表达式就可以获得

$(username)里面的值为张三

 

 

下面我们在struts2.xml加上一段话

    <action
name="aa">
            <result
type="redirectAction">redfish</result>
        </action>
 
利用这个action我们可以调用上面的refish里面的视图,redirectAction是可以其他视图的。
 
我们在加上一句话,
<action
name="bb">
        <result
type="redirect">/index.jsp</result>
</action>
通过这个我们可以对他重定向。重定向是会改变在浏览器里面的页面路径的,会指向真是存在的jsp或者action的路径。     
        
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struts2 action 注入