Webwork2結合SPRing, Hibernate
從User說起,包括創建/修改/刪除User,以及對User的列表,先看Webwork2的Action代碼
為簡單說明問題,不考慮什么Interceptor, Duplicated Submit, Validation,等問題
創建/修改/刪除User:UserAction.java相關代碼
java代碼:
1 UserManager userManager;
2
3 public void setUserManager(UserManager) {
...}
4 this.userManager = userManager;
5 }
6
7 public String create() {
...}
8 userManager.create(getUser());
9 }
10
11 public String modify() {
...}
12 userManager.modify(modifyUser())
13 return "sUCcess";
14 }
15
16 public String remove() {
...}
17 userManager.remove(getUser())
18 return "success";
19 }
xwork.xml相關代碼
java代碼:
1 <action name="user" class="com.caryo.user.actions.UserAction">
2 <external-ref name="userManager">userManager</external-ref>
3 <result name="success" type="dispatcher">user.jsp</result>
4 </action>
webwork action會自動接受頁面上傳過來的信息,而且還支持JavaBean的BeanInfo(BeanInfo沒用過,偶
都是直接在action中完成獲取屬性,以及類型轉換與校驗的工作的)
Webwork2很方便的支持了Command模式,答應一個Action擁有多個Command,對應的url調用
user!create.action, user!modify.action, user!remove.action,會對應的調用UserAction中的方法,
然后根據方法返回值去尋找對應的View,return "sucess" 就會forward到user.jsp。
其中的userManager是Spring中applicationContext中定義的bean
java代碼:
1 <bean id="userManager" class="com.caryo.user.DefaultUserManager">
2 <property name="userDAO"><ref local="userDAO"/></property>
3 </bean>
對User的列表:ListUserAction.java相關片斷
java代碼:
1 UserManager userManager;
2
3 public void setUserManager(UserManager) {
...}
4 this.userManager = userManager;
5 }
6 // userManager的獲取可放在一個User的根類聲明,如AbstractUserAction,這里重復為了看得清楚些
7
8 public List getAllUsers() {
...}
9 userManager.getAllUsers();
10 }
11
12 public List getOnlineUsers() {
新聞熱點
疑難解答