刚才我们已经知道了,在纵向上是webwork的mvc容器在起作用,在横向上是依赖于Spring的Ioc来管理类.
那么我们从最初的web.xml配置说起吧.
web.xml文件配置:
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">
- <context-param>
- <param-name>contextConfigLocationparam-name>
- <param-value>/WEB-INF/classes/applicationContext.xmlparam-value>
- context-param>
-
- <filter>
- <filter-name>webworkfilter-name>
- <filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcherfilter-class>
- filter>
-
- <filter-mapping>
- <filter-name>webworkfilter-name>
- <url-pattern>*.actionurl-pattern>
- filter-mapping>
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
- listener>
-
-
- <taglib>
- <taglib-uri>webworktaglib-uri>
- <taglib-location>/WEB-INF/lib/webwork-2.2.4.jar taglib-location>
- taglib>
- web-app>
接着我们注意看form表单
其中action指向login.action意思是要它来处理,那么它在何方.请看xwork.xml的配置:
xml 代码
- <action name="login" class="LoginAction">
- <result name="success" type="dispatcher">
- <param name="location">/main.jspparam>
- result>
- <result name="loginfail" type="dispatcher">
- <param name="location">/index.jspparam>
- result>
- <interceptor-ref name="modelParamsStack" />
- action>
根据上面的配置我们有理由相信这个name为login的action会处理这个post的请求的.但是这个action的本质是什么呢?
有一点webwork基础的人都知道一般它可以是一个实现了Action接口的类.
这个时候请注意看 class="LoginAction"意思是说这个action实际上就是由loginAction 来处理了.为什么这里不是通常的
"com.xxxx.XXAction".因为从这里开始Ioc就接管了它. 在bean配置文件里我们定义了:
<bean class="com.starter.action.LoginAction" id="LoginAction"></bean><bean class="com.starter.action.LoginAction" id="LoginAction"></bean>注意一下webwork.properties的配置
<property name="objUser">
<ref bean="User"></ref></property>
<property name="userService">
<ref bean="UserService"></ref></property>
由此我们可以看到刚才的class="LoginAction"实际上LoginAction只是一个bean的id而已.具体是什么在配置文件中已经定义好了.并对该action类注入了2个属性.至此我们需要考虑的就只是业务逻辑与数据的具体操作实现了.此时Everyting is controled by Ioc.
- <bean id="LoginAction" class="com.starter.action.LoginAction">
- <property name="objUser">
- <ref bean="User" />
- </property>
- <property name="userService">
- <ref bean="UserService" />
- </property>
- </bean>
- <bean id="UserService"
- class="com.starter.service.impl.UserServiceImpl">
- <property name="userDao">
- <ref bean="UserDAO" />
- </property>
- </bean>
- <bean id="UserDAO" class="com.starter.dao.impl.UserDAOImpl2" parent="baseDAO"></bean>
- <bean id="User" class="com.starter.vo.User"></bean>
webwork.objectFactory = spring
webwork.tag.altSyntax = true
只要遵循面向接口的编程原则,下面的细节不提了.
暂放几天代码提供下载.请点这里
分享到:
- 2007-04-24 18:55
- 浏览 2167
- 评论(0)
- 论坛回复 / 浏览 (0 / 2074)
- 查看更多
相关推荐
在这个“webwork+spring整合例子”中,很可能是提供了一个实际的项目示例,演示了如何配置和使用这两个框架的结合。这通常包括以下步骤: 1. 配置Spring的ApplicationContext,定义Bean并声明它们之间的依赖。 2. 在...
《WebWork.Spring.Hibernate整合开发网络书城》这个主题涵盖了三个关键的技术框架:WebWork、Spring和Hibernate。这些技术在现代企业级Java应用开发中扮演着至关重要的角色,特别是对于构建复杂的、数据驱动的Web...
【WebWork+Spring+Hibernate整合开发】是一种常见的Java Web应用程序架构模式,用于构建高效、可扩展的业务系统。WebWork是Action-based MVC框架,Spring是一个全面的企业级应用框架,而Hibernate则是流行的对象关系...
webwork+spring+hibernate整合开发网络书城 第5讲
Spring包括数据访问、事务管理、Web应用、测试等多个模块,能很好地与Hibernate和WebWork集成。在本项目中,Spring主要负责管理Bean,协调不同组件间的交互,提供事务管理和数据访问服务。 整合这三者,通常是为了...
而`shw` 可能是项目的主配置文件或者启动脚本,它可能包含了Spring的ApplicationContext配置,定义了Bean的实例化、依赖注入以及与WebWork和Hibernate的集成设置。这个文件通常会包含Spring对Hibernate ...
WebWork2.1与Spring的整合是Java Web开发中的一项重要技术,这两种框架的结合能够提供更强大且灵活的企业级应用解决方案。WebWork是一个轻量级的MVC(Model-View-Controller)框架,它专注于行动(Action)的管理,...
2. 整合WebWork与Spring:通过Spring的Struts2插件(WebWork2已被Struts2合并)将Spring的IoC容器集成到WebWork中,使得Action类可以在Spring容器中被管理。 3. 配置Hibernate:创建Hibernate的配置文件(如`...
iBATIS与Spring的整合允许通过Spring的DAO和Service层直接调用SQL映射文件,实现透明化的数据库操作。 **初学者实例**: "webwork+spring+ibatis" 的实例通常会展示如何将这三个框架集成到一个完整的Web项目中。这...
WebWork2.1 与 Spring 框架的集成是一个常见的技术实践,目的是利用 Spring 提供的依赖注入(DI)和面向切面编程(AOP)能力,以及 WebWork 的优秀动作层管理,来构建更加灵活和解耦的Java Web应用。在集成过程中,...
WebWork与Spring的整合可以实现更高级的控制反转和依赖注入,使得组件之间的耦合度降低,提高了代码的可测试性和可维护性。Spring可以通过其Action代理来管理和控制WebWork的动作,同时Spring的AOP特性可以用于处理...
本资源"WebWork.Spring.Hibernate整合开发网络书城全系列视屏4"提供了针对初学者的教程,通过第六讲的内容帮助用户理解如何将这三个框架集成到一个实际的网络书城项目中。 首先,WebWork是一个轻量级的MVC(模型-...
Spring MVC是Spring框架的一部分,专门用于处理Web应用的请求响应,与WebWork在某些功能上有重叠,但在实际整合中,两者可以协同工作,WebWork负责前端控制器,Spring负责更复杂的业务逻辑处理。 Hibernate是Java...
6. **整合的关键**:整合WebWork、Spring和Hibernate的主要目标是实现数据访问层(Hibernate)、业务逻辑层(Service)和表现层(WebWork)的解耦。Spring作为核心,管理Bean的生命周期和依赖注入,使得各个组件之间...
根据提供的文件信息,我们可以推断出这是一篇关于Java私塾中的Spring框架讲解与WebWork2整合教程的文章。下面将围绕这些关键词展开详细的讲解。 ### Spring框架基础 #### Spring简介 Spring是一个开源框架,最初由...
7. **挑战与注意事项**:整合过程中需要注意版本兼容性,确保WebWork、Spring和Hibernate的版本能够良好配合。此外,由于增加了框架的层次,调试和性能优化可能会稍显复杂,需要合理设计和配置以达到最佳效果。 综...
整合WebWork、Spring和Hibernate可以构建出高度解耦、易于测试和扩展的Java Web应用。这种模式不仅提高了开发效率,也使得代码更加清晰,降低了维护成本。在实际项目中,这种整合方式被广泛应用,尤其在大型企业级...
【标题】"WebWork Spring Hibernate整合开发网络书城(5)" 涉及的是一个将三个流行的Java开发框架——WebWork、Spring和Hibernate——集成在一起的项目,旨在创建一个网络书城应用程序。这个第五讲很可能是系列教程的...
在WebWork与Spring的整合中,Spring通常用于管理对象的生命周期和依赖关系,提供事务管理,以及与其它服务(如数据库)的交互。第五讲可能讲解了如何配置Spring容器,将WebWork与Spring进行集成,并利用Spring的数据...