龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Webwork2结合Spring, Hibernate

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
Webwork2结合Spring, Hibernate 从User说起,包括创建/修改/删除User,以及对User的列表,先看Webwork2的Action代码 为简单说明问题,不考虑什么Interceptor, Duplicated Submit, Validation,等问题 创建/修改

  
   
   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() {
  
  

精彩图集

赞助商链接