struts2的工作原理,struts2之chain的使用

 2023-12-06 阅读 27 评论 0

摘要:/** * 實現功能表單提交給action1先處理,再交由action2進行處理,中間傳遞參數a,b **/ /** struts2的工作原理,* 1. 配置文件 **/ <action name="action1" class="com.test.Action1"><result name="success" type

/**

* 實現功能表單提交給action1先處理,再交由action2進行處理,中間傳遞參數a,b

**/

/**

struts2的工作原理,* 1. 配置文件

**/

<action name="action1" class="com.test.Action1"><result name="success" type="chain">action2</result>
</action>
<action name="action2" class="com.test.Action2"><result name="success" type="chain">/index.jsp</result>
</action>

/**

* 2.java代碼

**/

public class Action1{//inputprivate String a;//outputprivate String c;   public String execute(){return "success";}public String getA(){return a;}public void setA(String a){this.a = a;}public String getB(){return c+" getB ";}public void setC(String c){this.c = c;}}
public class Action2{private String a;private String b;private String c;   public String execute(){System.out.println(a);System.out.println(b);System.out.println(c);return "success";}public String getA(){return a;}public void setA(String a){this.a = a;}public void setB(String b){this.b = b;}public String getB(){return b;}public void setC(String c){this.c = c;}}

struts2的執行流程??

/**
* 說明

* 1)配置文件中result的type屬性設置為chain, result標簽內寫傳給的action的name屬性值

* 2)action之間傳遞參數的實質是靠set和get方法,有沒有對應的屬性或屬性名字叫什么其實沒關系,一般情況下都是先寫屬性,再生成對應的set和get方法,這是

? ? ? ? 標準的做法,但不一定要這樣做, 要想把action1中的參數a傳遞給action2中的b,只需action1中提供getXX方法返回a的值,action2中提供setXX方法給b

netty handler執行順序。? ? ? ? 賦值即可

* 3)特別需要注意的一點是action1傳給action2時除了攔截器chain起作用外,表單處理攔截器param也會起作用,而且param在chain之后起作用,故如果param和

? ? ? ? chain都給同一個參數賦值的話,param會覆蓋chain的效果,例如表單提交了一個c, action1里對c進行了處理, 處理結果還是保留在c上,接下來你想把處理后

? ? ? ? 的c傳給action2處理,action2也用c來接收,這時候就會出現action2中的c的值是表單提交過來的值而不是action1傳過來的值,給你一種參數沒傳遞的錯覺,

? ? ? ? 其實是被覆蓋了,一般我的做法是action1中提供getB方法返回c的值,action2中不要提供setC而是提供setB來給c賦值

struts2框架、**/

?

轉載于:https://www.cnblogs.com/jay-blog/p/3543356.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/192808.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息