- 浏览: 279044 次
-
文章分类
最新评论
-
guji528:
oracle的统计函数真的很强大
Oracle 使用LAG和LEAD函数统计 -
haiyangyiba:
受教了
No Dialect mapping for JDBC type: 3 -
elvishehai:
能不能给个完整点的例子呀,我一直都没有试成功过,
简单的使用jackson的annotation -
miaoyue:
如果我想把name属性转成注释之后,之前的注释还在怎么做?
PowerDesigner 中将Comment(注释)及Name(名称)内容互相COPY的VBS代码 -
ianl_zt:
以上方法只适合在hibernate2中使用,现在hiberna ...
Hibernate的批量更新和删除
Spring 与 Struts 框架的整合通常有好几种方法。每种方法都有不同的特点,而且之间的差异也挺大,对于初学者来说非常难已弄懂每种方法是如何正确配置的。通常大家在网上或者书上看到的 spring 与 struts 整 合都是只介绍一到两种,而且各自介绍的方法又大有差异。这样使初学者更难入手,甚至把各个方法混淆在一起(本人初学时就是如此)。后来经过一段时间的摸 索,参考了大量的资料后,总结出了以下四种方法。四种方法从易到难,从不常用到常用。当然这只是本人的个人观点,没有任何权威性可言,仅供参考。
(所有方法的前提是你已经为项目添加好了 spring 与 struts 类库)
第一种:
需要配置的文件有: web.xml applicationContext.xml
步骤
1 、先配置 web.xml. ,首先让容器在启动的时候加载 applicationContext.xml
需要在 web.xml 当中添加如下内容:
< servlet > < servlet-name > context </ servlet-name > < servlet-class > org.springframework.web.context.ContextLoaderServlet </ servlet-class > < load-on-startup > 1 </ load-on-startup > </ servlet > |
( 这只是一种,还可以配置 Listener ,具体内容请上网搜索。 )
这里的介绍有个前提,那就是你的 applicationContext.xml 文件存放到 WEB-INF/ 文件夹下,不能是在别的文件夹,同时文件名也不可以更改为其它的文件名。
如果你真的更改了 applicationContext.xml 这个文件的路径或名字那么请在 web.xml 中加上以下内容:
<context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/classes/spring.xml </param-value> </context-param> |
(红色部分是你自己的路径和文件名)
2 、配置 applicationContext.xml
这里假设你有一个 ( Userdao .java) 类用于进行数据库的操作(具体的操作可暂时忽略)
那么我们在 applicationContext.xml 文件中进行如下配置:
< bean id = "userdao" class = "cn.oyangk.dao.Userdao" > </ bean > |
同时也有一个接口 ( IUserDAO .java) ,为什么要接口呢?其实这是一种编程思想――面向接口编程。
你的 Userdao .java 类实现了这个接口,那么我们在 struts 当中的 Action 中可以这样操作了。
ServletContext context = this.getServlet().getServletContext(); WebApplicationContext wac = WebApplicationContextUtils. getWebApplicationContext(context); // 只有通过此种配置方法才可以使用此方法 IUserDAO dao = (IUserDAO)wac.getBean("userdao"); // 通过 WebApplicationContext 得到 bean |
这样我们就可以将操作数据库的 DAO 通过 Spring 来管理了。当我们需要使用的时候,只需通过上面的方法就可以从 spring 当中得到我们想要的 DAO 类 .
所有方法的前提是你已经为项目添加好了 spring 与 struts 类库)
首先你的 web.xml 文件不需要像第一种方法那样去做任何的添加。只需保持默认的就行,也就是在你添加好 struts 及 spring 支持后默认的内容就可以。
以下为你需要进行更改的步骤:
1、 首先为了让 struts 能认识到 spring 那么先在 struts-config.xml 文件中添加 spring 插件。具体内容如下:
<!-- 添加 spring 支持 --> < plug-in className = "org.springframework.web.struts.ContextLoaderPlugIn" > < set-property property = "contextConfigLocation" value = "/WEB-INF/applicationContext.xml" /> </ plug-in > |
2、 修改你的 action 对应的 type 。这是因为,为了让 spring 来管理 action 那么我们需要将 action 生成权力交给 spring 具体参考以下例子:
< action attribute = "userForm" input = "/jsp/errors.jsp" name = "userForm" path = "/user" scope = "request" type="org.springframework.web.struts.DelegatingActionProxy" / > <!-- 截获 action ,让 spring 来生成 action --> |
红色部分为关键的一句。通俗一点来讲,就是当我们提交表单时, struts 会把我们提交的请求先转发给 spring 。这里的红色部分所显示的类,就是用来截获我们的请求。
当 spring 截获到请求后。它就会在 applicationContext.xml 当中寻找对就的 bean 。这里通过 action 当中的 path=”/user” 与 applicationContext.xml 中 bean 的 name 相等来进行匹配。
3、 修改 applicationContext.xml 文件。示例如下:
// 这个类是你的具体实现类,用来操作数据库的!当然他也实现了一个接口,这个接口我们会在 Action 当中使用到。 < bean id = "userdao" class = "cn.oyangk.dao.UserDAOImpl" > </ bean >
// 通过此处的 name = "/user" 与上面的 action 进行匹配。这样 spring 就知道我们的请求是转向哪个 action < bean name = "/user" class = "cn.oyangk.struts.action.UserAction" > < property name = "userdao" > < ref bean = "userdao" /> </ property > </ bean > |
4、 现在再来看 UserAction 这个类。
在这里我们只需要定义 UserDAOImpl 这个类的接口,并生成 setter 方法。
具体实现原理及过程:首先当我们提交一个请求到 struts 时, struts 会转发到 spring ,或者说是 spring 截获了我们的请求。然后 spring 根据 path 寻找对应的 action ,将请求转发到相应的 action ,同时实例化一个在此 action 当中设置好了的 dao 对象。此处为 userdao 。此后当我们在 action 类中进行操作时,由于 spring 已经将我们需要的 dao 类实例化好了,我们只需要拿到这个类的引用就可以。那如何拿到这个引用呢?这里就是为什么我们要在 action 定义这个类接口了。 spring 通过接口的 setter 方法使接口能够操作 userdao 了。
发表评论
-
AnnotationFormatError when using Spring 3.0 & JavaConfig
2011-02-25 10:52 5799Spring 3.0M3 及其以后的版本包含 ... -
Spring Schemas and Namespaces
2010-05-11 11:34 6020本章研究Spring命名空间,你将学到新的并且更简单的办 ... -
Spring 中的一些事务注解属性
2010-01-11 10:36 4270用 spring 事务管理器, ... -
Spring 3.0呼之欲出
2009-10-28 10:20 3232业界最著名使用最广泛的开源Java框架Spring宣布推出3. ... -
CXF jaxws spring configuration
2009-08-27 11:35 4844如果大家只是想了解如何写jaxws:endpoint 配置文件 ... -
Spring与SOA
2009-08-27 09:28 45071.引言 SOA是一种构造分布式系统的方法,它将业务应用功能 ... -
Spring 2.5新特性(2)-Spring MVC中的新特性
2009-08-20 11:06 3971Spring框架从创建伊始就 ... -
Spring 2.5的新特性(1):配置简化和基于注解的功能
2009-08-20 10:55 4123简介 从诞生之初,Spring框架就坚守它的宗旨:简化企业级 ... -
Spring 2.5新特性及架构图
2009-07-03 09:04 3676Spring2.5是Spring2.1各个里程碑版本的终结。 ... -
Spring 2.5.6新特性之packagesToScan
2009-07-03 08:58 3210如果你使用早前版本的Spring,又恰好采用了Annotati ... -
Spring2.5注解实现AOP
2009-07-02 11:33 3304这个例子非常的简单,下面是实体类 package test; ... -
图解Spring Security默认使用的过滤器
2009-06-15 11:03 3864首先看一下auto-config="tr ... -
使用 Spring 2.5 TestContext 测试框架
2009-04-29 16:41 3080Spring 2.5 TestContext 测试框架用于测试 ... -
Spring 2.5 Annotation
2009-04-07 11:44 3348基于注释(Annotation) ... -
spring 注解
2009-04-01 09:33 3123Spring JSR-250注解 注释配 ... -
Spring2.0用注解实现事务管理
2009-04-01 09:31 4429Spring2.0框架的事务处理有两大类: 1 编码式事务 ... -
Spring技巧之简洁配置
2009-01-09 11:08 3293Spring2.0在配置上调整了不少地方,增加更加灵活、简洁的 ... -
spring框架使用任务调度quartz的例子-TriggerListener 篇
2008-09-04 21:31 2594有时候我们的任务(Job)需要再某些任务完成之后 ... -
spring框架使用任务调度quartz的例子-Job and Trigger 篇
2008-09-04 21:21 2329MainJob.java 1package jobs; 2 ... -
基于struts+spring+ibatis的轻量级J2EE开发
2008-08-29 09:17 2139JpetStore 4.0是ibatis的最新示例程序,基于S ...
相关推荐
在"Spring与Struts 2整合.zip"这个压缩包中,可能包含了一系列的配置文件、源代码和示例项目,帮助开发者了解和学习如何将这两个框架有效地结合在一起。通过学习和实践这些材料,开发者可以掌握在实际项目中整合...
将这两个框架整合在一起可以构建出高效、模块化的 Web 应用。 首先,我们来理解 Spring 框架的核心概念。Spring 的 DI 机制允许开发者通过配置文件或注解来管理对象及其依赖关系,降低了代码的耦合度,使得组件更...
整合Spring和Struts是Web开发中常见的需求,这两者都是Java Web开发的重要框架。Spring以其强大的依赖注入(DI)和面向切面编程(AOP)能力,以及对其他框架的良好集成,而Struts则是一个专注于MVC模式的轻量级框架...
在Java Web开发中,Spring和Struts2...整合Spring和Struts2是一个常见的Java Web开发实践,熟练掌握这一技能能够提高开发效率,提升应用的可维护性和扩展性。在实际开发过程中,可以根据项目的具体需求进行定制和优化。
例如,struts_ibatis_spring_框架整合_数据库(文档).rar中可能包含了整合步骤、配置示例和常见问题解答等内容。 整合后的系统具有良好的模块化和解耦特性,开发者可以根据需求快速构建复杂的企业级应用。然而,整合...
使用Spring的`ActionSupport`是一种非常常见的整合方式,它允许我们利用Spring框架的功能来增强Struts框架。具体实现方法是让自定义的Action继承自`org.springframework.web.struts.ActionSupport`类,这样就可以在...
整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...
### SSH框架整合详细步骤(spring+struts2+hibernate) #### 一、整合概述 在现代Web应用开发中,SSH(Struts2、Spring、Hibernate)框架因其各自独特的功能和优势,常被组合使用以构建高效、稳定且易于维护的系统...
在Java Web开发中,Spring和Struts2是两个非常重要的框架。Spring以其强大的依赖注入(DI)和面向切面编程(AOP)能力,而Struts2则以其优秀的MVC设计模式著称,两者结合可以构建出高效、可维护的Web应用。本文将...
在这个"spring和struts的整合-aop的使用"主题中,我们将深入探讨如何将Spring与Struts2集成,并利用Spring的AOP实现日志记录。 首先,整合Spring和Struts2的关键在于配置。通常,我们需要在Struts2的配置文件...
将这两个框架整合在一起,可以利用Spring的强大功能,如依赖注入(DI)和面向切面编程(AOP),以及Struts提供的优秀用户界面和请求处理能力。接下来,我们将详细探讨Spring和Struts整合开发中的关键知识点。 1. **...
在企业级应用开发领域,Spring框架和Struts框架都是极具影响力的技术。Spring以其强大的依赖注入(DI)和面向切面编程(AOP)能力,提供了良好的环境管理和业务逻辑处理;而Struts作为MVC架构的先驱者,在构建复杂的...
Struts2 Spring3 Hibernate3.3框架整合,增删改查,包含有数据库建表语句,包含有JAR包,包含有源代码。包含有事务的配置以及运用。使用的是Oracle的序列来提供的主键自增,建表和建立序列的sql语句,已经放在工程...
**SSM框架整合** SSM框架指的是Spring、Struts2、Mybatis三个框架的整合使用。整合过程中,Spring起到中心控制的作用,同时负责管理Struts2和Mybatis的相关配置和生命周期。 1. **Spring与Struts2整合**:Struts2...
Struts2、Spring和MyBatis是Java Web开发中经典的三大框架,它们组合起来可以构建出高效、可维护的Web应用程序。以下是对这三个框架及其整合的详细解释。 **Struts2框架** Struts2是一个基于MVC(Model-View-...
"Spring+Struts2+Hibernate框架整合"是Java Web开发领域中的一种常见架构模式,它结合了Spring的依赖注入、AOP(面向切面编程)、事务管理,Struts2的MVC(模型-视图-控制器)设计模式,以及Hibernate的对象关系映射...
【JavaWeb整合框架:Spring+Struts2+iBatis详解】 在JavaWeb开发领域,Spring、Struts2和iBatis是三个非常重要的组件,它们分别负责不同的职责,共同构建了一个强大的企业级应用开发框架。这个框架组合被称为“SSH...
《Spring+Struts+Hibernate整合开发》是一本深入讲解企业级Java应用开发的书籍,它主要聚焦于三大著名开源框架——Spring、Struts和Hibernate的集成与应用。这些框架是Java Web开发中的基石,广泛应用于各种复杂的...
在"struts2+hibernate+spring框架整合实列"中,通常会按照以下步骤进行整合: 1. **配置环境**:首先确保所有框架的库文件已添加到项目类路径中,并设置好相应的版本兼容性。 2. **配置Struts2**:在web.xml中配置...
在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架组合,而Redis则是一个高性能的键值存储系统,常用于缓存和数据持久化。将SSH与Redis整合,可以提升应用程序的性能和响应速度。下面将...