Struts2_三种传参数方法
1、通过属性传参数(Attr)
UserAction.java
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
调用方法:
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
2、通过域模型传参数(Domain Model)
UserAction.java
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
User.java
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
UserDTO.java
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
调用方法:
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
3、通过模型驱动传参数(Model Driven)
UserAction.java
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
User.java
(源代码同上)
调用方法:
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![Struts2_三种传参数方法 - shexinyang - 神话飞扬](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
1、通过属性传参数(Attr)
UserAction.java
调用方法:
2、通过域模型传参数(Domain Model)
UserAction.java
User.java
UserDTO.java
调用方法:
3、通过模型驱动传参数(Model Driven)
UserAction.java
User.java
(源代码同上)
调用方法: