本文主要讲解webwork与spring的集成.
有人说有了webwork就没有必要和spring集成.
也有人说webwork和spring集成起来功能更加强大.
本人同意上述两个观点,本文觉得webwork没有必须要和spring集成,当然我这里仅指springMVC,webwork本身就是一个很好的MVC实现.而webwork可以和spring除SpringMVC以外其的组件集成,像spring的持久层组件.更多的本人也不敢发表言论,大家如果感兴趣可以到网上找找相关的资料.
提示:为了减少视频的录制时间,减少上传文件的空间.本文也是在上几个视频的基础上进行改动.所以在阅读本文之前请先参考上几个视频.可以在本博客上直接下载,webwork国际化这节.<o:p></o:p>
Webwork集成spring
1. 修改 web.xml,为 Web 应用增加相应的 Spring ContextLoaderListener <o:p></o:p>
xml 代码
- xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <servlet>
- <servlet-name>webwork<!---->servlet-name>
- <servlet-class>
- com.opensymphony.webwork.dispatcher.ServletDispatcher
- <!---->servlet-class>
- <!---->servlet>
- <servlet-mapping>
- <servlet-name>webwork<!---->servlet-name>
- <url-pattern>*.action<!---->url-pattern>
- <!---->servlet-mapping>
- <listener>
- <listener-class>
- org.springframework.web.context.ContextLoaderListener
- <!---->listener-class>
- <!---->listener>
- <!---->web-app>
java 代码
- package com.lyx.service;
- import com.lyx.bo.User;
-
- public interface IUserService {
- public boolean isValidUser(User user);
- }
-
- }
java 代码
- package com.lyx.service;
- import com.lyx.bo.User;
-
- public class UserService implements IUserService {
-
- public boolean isValidUser(User user) {
- if (user.getUserName().equals("lyx") && user.getUserPwd().equals("lyx"))
- return true;
- else
- return false;
- }
- }
4.修改xwork.xml配置文件<o:p></o:p>
xml 代码
- >
- <xwork>
- <include file="webwork-default.xml" />
- <package name="action" extends="webwork-default">
- <action name="login" class="login">
-
- <result name="success" type="dispatcher">
- <param name="location">/success.jsp<!---->param>
- <!---->result>
-
- <result name="error" type="dispatcher">
- <param name="location">/error.jsp<!---->param>
- <!---->result>
- <result name="input" type="dispatcher">
- <param name="location">/index.jsp<!---->param>
- <!---->result>
-
- <interceptor-ref name="model-driven" />
- <interceptor-ref name="params" />
- <interceptor-ref name="validationWorkflowStack" />
- <!---->action>
- <!---->package>
- <!---->xwork>
5) 添加 spring 框架到项目中
修改 applicationContext.xml 文件,加入 UserServiceImpl 的配置信息<o:p></o:p>
xml 代码
- xml version="1.0" encoding="UTF-8"?>
- >
-
- <beans>
- <bean id="userService" class="com.lyx.service.UserService" singleton="false"/>
- <bean id="login" class="com.lyx.web.action.LoginAction" singleton="false" >
- <property name="userService">
- <ref bean="userService"/>
- <!---->property>
- <!---->bean>
- <!---->beans>
注意:这里的红色字体login一定要和xwork配置文件中的login一样.<o:p></o:p>
6) 修改 Action <o:p></o:p>
java 代码
- LoginAction.java
- package com.lyx.web.action;
- import com.opensymphony.xwork.Action;
- import com.opensymphony.xwork.ActionSupport;
- import com.opensymphony.xwork.ModelDriven;
- import com.test.services.IUserService;
- public class LoginAction extends ActionSupport implements Action,ModelDriven {
- private User user = new User();
- private IUserService userService;
- public User getUser() {
- return user;
- }
- public String execute() throws Exception {
- if (userService.isValidUser(user))
- return this.SUCCESS;
- else
- return this.ERROR;
- }
- public Object getModel() {
- return user;
- }
-
- public void setUserService(IUserService userService) {
- this.userService = userService;
- }
- }
<o:p></o:p>
分享到:
相关推荐
### 如何实现WebWork+Spring+Hibernate框架结合 随着企业级应用需求的不断增加和技术的不断发展,集成多种技术栈成为一种趋势。WebWork+Spring+Hibernate是早期比较流行的一种技术组合,它们各自解决的问题域不同,...
`Manning@2007 - Spring in Action(2nd Edition).pdf`和`SpringGuide.pdf`很可能是Spring的详细教程,涵盖了Spring的各个方面,包括核心概念、Web开发、测试等。 通过深入学习和理解这些框架,开发者可以构建出高效...
10. **集成与扩展**:WebWork可以与其他Java技术如Spring、Hibernate等无缝集成。书的最后可能讨论了如何将WebWork与这些框架结合,以及如何定制和扩展WebWork以满足特定需求。 通过阅读"WebWork in Action"这本书...
《WebWork In Action》这本书是针对Java Web开发框架WebWork的专业指南。WebWork是一个轻量级、基于MVC(Model-View-Controller)架构的框架,它为开发者提供了强大而灵活的方式来构建动态Web应用程序。本篇文章将...
学习WebWork不仅可以提高Java Web开发技能,还可以帮助理解其他MVC框架,如Spring MVC。同时,对于那些需要维护旧版WebWork项目或者希望了解WebWork与Struts2差异的开发者来说,这本书也是宝贵的参考资料。 总之,...
Struts2继承了Webwork的拦截器和DMI特性,并引入了更多新特性,如更强大的表达式语言(OGNL),以及与Spring框架的深度集成。学习Webwork的源代码有助于理解Struts2的设计思想,这对于使用或优化Struts2应用的开发者...
” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...
” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...
” ——Jack Herrington,Code Generation in Action的作者 ----总共8部分rar下载完后解压 ----- Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文...
根据提供的文件信息,我们可以从《Java - Manning - WebWork in Action (2006)》这本书中提炼出多个关于WebWork框架的知识点。下面将详细展开这些知识点。 ### WebWork框架简介 #### 1. WebWork框架概述 - **定义*...