`
lyx_2709
  • 浏览: 314725 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

webwork in spring

阅读更多

本文主要讲解webworkspring的集成.

有人说有了webwork就没有必要和spring集成.

也有人说webworkspring集成起来功能更加强大.

本人同意上述两个观点,本文觉得webwork没有必须要和spring集成,当然我这里仅指springMVCwebwork本身就是一个很好的MVC实现.而webwork可以和springSpringMVC以外其的组件集成,像spring的持久层组件.更多的本人也不敢发表言论,大家如果感兴趣可以到网上找找相关的资料.

提示:为了减少视频的录制时间,减少上传文件的空间.本文也是在上几个视频的基础上进行改动.所以在阅读本文之前请先参考上几个视频.可以在本博客上直接下载,webwork国际化这节.<o:p></o:p>

Webwork集成spring

1. 修改 web.xml,为 Web 应用增加相应的 Spring ContextLoaderListener <o:p></o:p>

xml 代码
 
  1. xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   
  5.     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  
  6.     <servlet>  
  7.         <servlet-name>webwork<!---->servlet-name>  
  8.         <servlet-class>  
  9.             com.opensymphony.webwork.dispatcher.ServletDispatcher  
  10.         <!---->servlet-class>  
  11.     <!---->servlet>  
  12.     <servlet-mapping>  
  13.         <servlet-name>webwork<!---->servlet-name>  
  14.         <url-pattern>*.action<!---->url-pattern>  
  15.     <!---->servlet-mapping>  
  16.     <listener>  
  17.         <listener-class>  
  18.             org.springframework.web.context.ContextLoaderListener  
  19.         <!---->listener-class>  
  20.     <!---->listener>  
  21. <!---->web-app>  
java 代码
 
  1. package com.lyx.service;  
  2. import com.lyx.bo.User;  
  3.   
  4. public interface IUserService {  
  5.     public boolean isValidUser(User user);  
  6.     }  
  7.   
  8. }  
java 代码
 
  1. package com.lyx.service;  
  2. import com.lyx.bo.User;  
  3.   
  4. public class UserService implements IUserService {  
  5.   
  6.     public boolean isValidUser(User user) {  
  7.         if (user.getUserName().equals("lyx") && user.getUserPwd().equals("lyx"))  
  8.             return true;  
  9.         else  
  10.             return false;  
  11.     }  
  12. }  

4.修改xwork.xml配置文件<o:p></o:p>

xml 代码
 
  1. >  
  2. <xwork>  
  3. <include file="webwork-default.xml" />  
  4.     <package name="action" extends="webwork-default">  
  5.         <action name="login" class="login">  
  6.             <!---->  
  7.             <result name="success" type="dispatcher">  
  8.                 <param name="location">/success.jsp<!---->param>  
  9.             <!---->result>  
  10.             <!---->  
  11.             <result name="error" type="dispatcher">  
  12.                 <param name="location">/error.jsp<!---->param>  
  13.             <!---->result>  
  14.             <result name="input" type="dispatcher">  
  15.                 <param name="location">/index.jsp<!---->param>  
  16.             <!---->result>  
  17.   
  18.             <interceptor-ref name="model-driven" />  
  19.             <interceptor-ref name="params" />  
  20.             <interceptor-ref name="validationWorkflowStack" />  
  21.         <!---->action>  
  22.     <!---->package>  
  23. <!---->xwork>  

   5) 添加 spring 框架到项目中

   修改 applicationContext.xml 文件,加入 UserServiceImpl 的配置信息<o:p></o:p>

xml 代码
 
  1. xml version="1.0" encoding="UTF-8"?>  
  2. >  
  3.   
  4. <beans>  
  5.     <bean id="userService" class="com.lyx.service.UserService" singleton="false"/>  
  6.     <bean id="login" class="com.lyx.web.action.LoginAction" singleton="false" >  
  7.         <property name="userService">  
  8.             <ref bean="userService"/>  
  9.         <!---->property>  
  10.     <!---->bean>  
  11. <!---->beans>  

注意:这里的红色字体login一定要和xwork配置文件中的login一样.<o:p></o:p>

   6) 修改 Action <o:p></o:p>

java 代码
 
  1.    LoginAction.java  
  2. package com.lyx.web.action;  
  3. import com.opensymphony.xwork.Action;  
  4. import com.opensymphony.xwork.ActionSupport;  
  5. import com.opensymphony.xwork.ModelDriven;  
  6. import com.test.services.IUserService;  
  7. public class LoginAction extends ActionSupport implements Action,ModelDriven  {  
  8.     private User user = new User();  
  9.     private IUserService userService;  
  10.     public User getUser() {  
  11.         return user;  
  12.     }  
  13.     public String execute() throws Exception {  
  14.         if (userService.isValidUser(user))  
  15.             return this.SUCCESS;  
  16.         else  
  17.             return this.ERROR;  
  18.     }  
  19.     public Object getModel() {  
  20.         return user;  
  21.     }  
  22.   
  23.     public void setUserService(IUserService userService) {  
  24.         this.userService = userService;  
  25.     }  
  26. }  

<o:p></o:p>

  • webworkfirst.rar (15.7 KB)
  • 描述: 源码,没有包,自己加吧
  • 下载次数: 560
分享到:
评论
1 楼 nbspnbsp 2007-06-13  
Thank you!!

相关推荐

    开发指南(spring,hibernate,ibatis,webwork)

    `Manning@2007 - Spring in Action(2nd Edition).pdf`和`SpringGuide.pdf`很可能是Spring的详细教程,涵盖了Spring的各个方面,包括核心概念、Web开发、测试等。 通过深入学习和理解这些框架,开发者可以构建出高效...

    webwork in action.

    10. **集成与扩展**:WebWork可以与其他Java技术如Spring、Hibernate等无缝集成。书的最后可能讨论了如何将WebWork与这些框架结合,以及如何定制和扩展WebWork以满足特定需求。 通过阅读"WebWork in Action"这本书...

    Spring开发指南

    Webwork2 in Spring Struts in Spring 数据持久层 事务管理 持久层封装 JDBC Hibernate in Spring ibatis in Spring Aspect Oriented Programming AOP 概念 AOP in Spring Dynamic Proxy 与Spring AOP...

    WebWork In Action

    《WebWork In Action》这本书是针对Java Web开发框架WebWork的专业指南。WebWork是一个轻量级、基于MVC(Model-View-Controller)架构的框架,它为开发者提供了强大而灵活的方式来构建动态Web应用程序。本篇文章将...

    webwork in action

    学习WebWork不仅可以提高Java Web开发技能,还可以帮助理解其他MVC框架,如Spring MVC。同时,对于那些需要维护旧版WebWork项目或者希望了解WebWork与Struts2差异的开发者来说,这本书也是宝贵的参考资料。 总之,...

    Webwork in Action

    Struts2继承了Webwork的拦截器和DMI特性,并引入了更多新特性,如更强大的表达式语言(OGNL),以及与Spring框架的深度集成。学习Webwork的源代码有助于理解Struts2的设计思想,这对于使用或优化Struts2应用的开发者...

    Spring In Action中文 第六部分

    ” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...

    Spring In Action中文 第七部分

    ” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...

    Spring In Action中文 第五部分

    ” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...

Global site tag (gtag.js) - Google Analytics