Struts+Spring+Hibernate框架搭建
Struct2、Hibernate3、Spring3框架搭建实战
Struct2、Hibernate3、Spring3框架搭建实战采⽤⽬前最新的struts-2.3.1.2、hibernate3.6.10.Final、spring-framework-3.1.1.RELEASE开发包,以及eclipse-jee-indigo-SR2-win32、apache-tomcat-7.0.27服务器、JDK6和mysql5做开发环境,参考了前辈的⼀篇相关⽂章,改正了其中的错误和疏漏,克服了公司分配的“新”机器每⼩时⾃动重启三次的困难,终于把环境给搭好了。
整个过程中遵循的⼀个原则是,避免引⼊⽤不到的jar包,以求搭建⼀个最⼩的SSH 运⾏环境。
⾸先创建⼀个Dynamic web project 输⼊任意名字如SSHBase。
第⼀步:加载Spring环境我们需要引⼊的包有:org.springframework.asm-3.1.1.RELEASE.jarorg.springframework.beans-3.1.1.RELEASE.jarorg.springframework.context-3.1.1.RELEASE.jarorg.springframework.core-3.1.1.RELEASE.jarorg.springframework.expression-3.1.1.RELEASE.jarorg.springframework.jdbc-3.1.1.RELEASE.jarorg.springframework.web-3.1.1.RELEASE.jarorg.springframework.orm-3.1.1.RELEASE.jar由于spring默认开启了⽇志,还需要加⼊commons-logging的jar包,否则会报错。
建议不要⼀次性加⼊应该先加最核⼼的运⾏代码看缺少什么加什么,这样就不会加多余的包进来了,spring3已经把包按功能分开,不像以前⼀个包,这样更灵活,只要运⾏我们需要的功能,⽽没⽤到的就不⽤在硬性的添加进来。
eclipse 3.4 三大框架(struts+hibernate+spring)搭建
eclipse 3.4 三大框架(struts+hibernate+spring)搭建
看到有很多文章都是eclipse+myeclipse搭建三大框架,其实,我们完全可以自己动手来搭建,搭建一个自己的myeclipse。
struts框架,到/下载struts tools 解压放到eclipse目录下的features 和plugins目录下即可,也可以通过后面安装hibernate时提供的网址下载。
这个比较简单,没什么难度,eclipse插件的安装,大多数都是解压后放到eclipse目录下的features和plugins也可以自己建目录,再接连接来使用插件(可以参考
网上的一些别的教程,有很多是关于eclipse插件安装的)。
spring框架,spring框架的安装前面的步骤与汉化的步骤相同,打开eclipse-帮助-Software Updates....
在打开的对话框中选择上面的第二项(Available Software)
点击Add Site按钮,弹出URL对话框,在对话框里输入:/updatesite/点击确定(OK)选择一下sping IDE等侍安装成功吧,sping框架如果下载了包,覆盖进去,是不能成功的,而且在安装时要先安装它,再安装hibernate,如果先安装了hibernate,sping 是安装不成功的,安装过程就会报错
hibernate框架,hibernate框架的安装同上,在URL项填:/jbosstools/updates/stable/,选择jboss tools,hibernate tools即可,这个网站里也有struts,也可以在这里安装,完成后eclipse会重启。
搭建SSH框架(Struts1,Spring2.5,Hibernate3)
搭建SSH框架:Struts1.* + Spring2.5 + Hibernate3.0 一,项目结构:图(1)Jsp页面省略,主要是一些添删改查的页面;二,开始搭建项目环境,步骤如下:使用平台:MyEclipse6.0/6.5框架版本:Struts1.* + Spring2.5 + Hibernate3.0;1,添加过程:1>,新建项目: 打开MyEclipse,在Package Explorer视图下,右键单击New-> Web Project;注意:在新建项目时,JDK的版本最好要选择Java EE 5.0;因为版本过低,可能有些JSP方面的功能不支持;新建玩项目之后,把该导的包导入到下面,下图为SS H 框架所需要的Jar包,注意,该项目用的是ORACLE数据库;其中,activation与mail这两个包为Java发邮件的包;classes12为Oracle数据库的驱动包,如果不是Oracle数据库,可更换该Jar包;dwe为Ajax dwr 框架中的包;2>,接着就开始用MyEclipse辅助开发Struts,Spring,Hibernate了;3>,首先MyEclipse辅助开发Struts,方法:右键单击你所建的项目,出现一级菜单,选择Myeclipse,选择Myeclipse之后会出现二级菜单,接着选择Add Struts Capabilities;;接着具体操作如下面图示:点击Finish按钮完成;完成之后,可将包删除;在上图中,如果那个勾没有去掉的话,就会自动生产如下标签:当然,如果你觉得标签对你没什么用的话,可以删除;如果该勾去掉的话,就只生成标签,这是Struts的核心标签;4>,MyEclipse辅助开发Spring,方法跟上面的一样,选择Add Spring apabilities;;接着具体操作如下面图示:然后点击Next,具体操作如下图:接着点击 Finish按钮,完成此项操作;5>,,最后MyEclipse辅助开发Hibernate,在执行和上面类似方法之前,Hibernate 需要先做另外一件事情,那就是和数据建立连接,具体操作如下图:点击上图位置的或者右边的>> ,然后再选择MyEclipse Database Explorer切换到如下图页面:,然后右键单击,新建一个Database Driver;如下图:下面这个截图是该项目的数据库链接图:如图所示,测试数据库链接成功;然后可直接点击Finish完成;接着切换到窗口,按照上面第三小步的方法,选择Add Hibernate apabilities;;接着具体操作如下面图示:点击下一步:点击下一步:点击下一步:点击下一步:点击 Finish 完成;6>,最后一步,就是运用Hibernate的映射机制,把数据库的表与JAVA的对形成一个关系映射;在此之前,首先应该在项目SRC的目录下面新建一个包,如该项目所示,用来存放映射生成的POJO对象以及映射文件;如下图:有一点说一下,你生成的*.hbm.xml文件可能不止一个,对,你可以把它们整合到一个文件中;然后新建按第五小步的方法,把窗口切换到MyEclipse Database Explorer界面,然后打开右键刚才所建立的链接,选择属于你自己的用户;然后选择Tble;右键选择如上图的属性:接下来的操作如下图:点击 Next,进入下一步:点击 Next,进入下一步:至此,项目环境己经搭建完成;三,项目搭建完成,SSH各个部分配置文件的说明,以及它们之间存在的关系:1,首先是Struts的核心配置文件,即struts-config.xml:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN""/dtds/struts-config_1_2.dtd"><struts-config><data-sources /><form-beans><!—建立Form表单,在此处进行登记 -→<form-bean name="userForm"type="erForm" /> </form-beans><global-exceptions /><global-forwards /><!—各个Action对应与之相对应的表单 -→<action-mappings><!-- 用户管理 --><action parameter="opers" attribute="userForm" name="userForm"path="/doUser" scope="request"><forward name="login_ok" path="/welcome.jsp"></forward><forward name="login_no" path="/index.jsp"></forward> </action></action-mappings><controllerprocessorClass="org.springframework.web.struts.DelegatingRequestProc essor"></controller><message-resourcesparameter="ermanagerview.struts.ApplicationResources"> </message-resources><!—Spring辅助Struts管理Struts-→<plug-inclassName="org.springframework.web.struts.ContextLoaderPlugIn"><set-property property="contextConfigLocation"value="/WEB-INF/action-servlet.xml" /></plug-in></struts-config>2,其次就是Springd的applicationContext.xml文件和action-servlet.xml文件:applicationContext.xml文件:<?xml version="1.0" encoding="UTF-8"?><beansxmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans-2.5.xsd"><!-- Session 工厂 --><bean id="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation"value="classpath:hibernate.cfg.xml"><!-- 可以不要配置文件(hibernate.cfg.xml),直接写在这个Spring的配置文件中 --></property></bean><!-- 模板 --><bean id="hibernateTemplate"class="org.springframework.orm.hibernate3.HibernateTemplate"><property name="sessionFactory" ref="sessionFactory" /> </bean><!-- 事务器 --><bean id="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManage r"><property name="sessionFactory" ref="sessionFactory" /> </bean><!-- 对外代理 --><!-- 1,用户管理 --><bean id="userDaoImp"class="erDaoImp"><property name="hibernateTemplate" ref="hibernateTemplate" /> </bean><bean id="userServiceTarget"class="erServiceImp"> <property name="userdao"><ref local="userDaoImp" /></property></bean><bean id="userService"class="org.springframework.transaction.interceptor.TransactionProxyF actoryBean"><property name="transactionManager"><ref local="transactionManager" /></property><property name="target"><ref local="userServiceTarget" /></property><property name="transactionAttributes"><props><prop key="*">PROPAGATION_REQUIRED</prop></props></property></bean></beans>action-servlet.xml文件:<!—Spring辅助Struts管理Struts-<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans-2.0.xsd"> <bean name="/doUser"class="erAction"scope="prototype"></bean></beans>3,最后就是Hibernate的hibernate.cfg..xml文件:<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools. --><hibernate-configuration><session-factory><property name="ername">wangxiaodong</property><property name="connection.url">jdbc:oracle:thin:@192.168.0.2:1521:ALIZEEDB</property><property name="dialect">org.hibernate.dialect.Oracle9Dialect</property><propertyname="myeclipse.connection.profile">Test</property><property name="connection.password">donny</property><property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property><mappingresource="com/ygkq/usermanager/model/entity/User.hbm.xml" /></session-factory></hibernate-configuration>该文件基本上不用动,都是自动生成的代码;当然,你也可以根据自己的需要添加代码,例如,你想在执行HQL语句的时候让它显示SQL语句,可将<property name="hibernate.show_sql">true</property>插入代码中;另外在图(1)中还有两个配置文件没有提到,那就是log4j.properties 与mytag.tld;其中log4j.properties是配置日志信息的;而mytag.tld主一个自定义标签;四,SSH框架搭建完成:SSH框架基本搭建完成,如果有不对或者不妥之处,请随时指教!~E-mail:jerry8059@。
STRUT+SPRING+HIBERNATE
Strut1.Struts框架结构如图:Struts对Model,View和Controller都提供了对应的组件。
在图中,ActionServlet,这个类是Struts的核心控制器,负责拦截来自用户的请求。
Action,这个类通常由用户提供,该控制器负责接收来ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示2.Model部分由ActionForm和JavaBean组成,其中ActionForm用于封装用户的请求参数,封装ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionForm里面的请求参数处理用户的请求。
JavaBean则封装了底层的业务逻辑,包括数据库访问等。
3.View部分该部分采用JSP实现.Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。
对应上图的JSP部分4.Controller组件Controller组件有两个部分组成——系统核心控制器,业务逻辑控制器。
系统核心控制器,对应上图的ActionServlet。
该控制器由Struts框架提供,继承HttpServlet 类,因此可以配置成标注的Servlet。
该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。
业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理。
对应Action部分Spring1.简介Spring是一个开源框架,它由Rod Johnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java 应用都可以从Spring中受益。
零基础搭建spring+struct+hibernate详细步奏
目录:一、SSH结构简介 (2)二、环境配置 (3)(在配置之前,先建立一个Web Project)搭建好的效果 (3)添加spring (4)配置spring (8)导入mysql驱动包 (9)添加hibernate (9)配置hibernate (19)添加struts (19)配置struts (20)配置web.xml (21)三、程序的SSH层次 (21)四、具体代码 (22).ljq_01047010.dao (22).ljq_01047010.hibernate (23).ljq_01047010.struts (24)4.jsp中的代码 (26)五、程序效果 (31)(之所以截这么多图,本人还想将这个文档上传,以方便那些零基础的人!)一:SSH结构简介SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。
集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。
具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate 的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。
系统的基本业务流程是:在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。
Struts2+Spring+Hibernate搭建详解(包含代码)-13页word资料
Struts2+Spring+Hibernate搭建全解!Struts2+Spring+Hibernate是J2EE的最新流行框架。
本篇是我搭建这个框架的经验总结,有很多人搭建这个框架总会遇到大大小小的问题,网上也没有什么行之有效的方案或成体系的介绍,所以我就决定总结一下我的搭建过程。
给一些搭建尚存问题的朋友提供帮助。
我用这个框架,实现的是基本的CRUD功能的一个雇员管理系统,本来打算丰富一下功能,但是一直没能抽出空去搞。
目前版本暂定为1.0,除了CRUD外还配置了表单验证框架JSValidation。
功能都能很顺利的实现。
现在分享部分源码,来说明一些注意事项。
以下是部分搭建过程及源码:1.先组合实现Hibernate3.2+Spring2.5支持,删除hibernate.cfg.xml文件,修改applicationContext.xml文件的内容,增加SessionFactory和dataSource的设置。
2.通过MyEclipse的向导方式,生成POJO类和对应的映射文件。
3.修改applicationContext.xml文件中<property name="mappingResources">元素的内容。
4.编写DAO接口和实现类。
5.修改applicationContext.xml文件,增加对Dao实现类的配置。
6.组合Struts2和Spring2.5,修改web.xml文件,增加struts2的所需要的过滤器配置。
7.增加struts2相应类库,增加struts2与spring的配置jar包。
8.拷贝struts.xml文件到src根目录下,再修改struts.xml文件,进行常量配置。
9.修改web.xml文件,配置Spring监听器,和上下文变量。
并增加OpenSessionInViewFilter的设置。
10.写入action类。
11.配置struts.xml文件。
Struts+Spring+Hibernate整合入门详解
3、运行eclipse,选择一个空目录作为工作区(工程结构如下:其中我们要写的Java代码在Java Resource: src(以后直接称src)下,网站根目录内容在WebContent下,类所在根目录是WEB-INF/classes,Eclipse 会自动将build/classes里面已经编译的类同步过去。
向WEB-INF下的lib目录添加如下所列的jar包。
(1)这些包在下载解压后Spring,Struts,Hibernate的lib目录或者dist/module目录下面(如果不在,可以到网上google一把。
列表中mysql-*.jar包是MySQL数据库的JDBC Driver)。
也可以把所有lib和dist 下的jar包拷贝过来(可以在系统复制这些jar包,然后到Eclipse里面选中WEB-INF里面的lib包,然后粘帖就可以了)。
但要注意全拷贝可能会存在冲突,如struts*plugin.jar等包不能引入,否则不能运行。
(2)这些Jar包是:antlr-2.7.2.jarcglib-nodep-2.1_3.jarcommons-beanutils-1.6.jarcommons-chain-1.1.jarcommons-collections-2.1.1.jarcommons-dbcp.jarcommons-digester.jarcommons-logging-1.0.4.jarcommons-logging-api-1.1.jarcommons-pool.jarcommons-validator-1.3.0.jardom4j-1.6.1.jarel-api.jarel-ri.jarfreemarker-2.3.8.jarhibernate3.jarjsf-api.jarjta.jarmysql-connector-java-3.0.14-production-bin.jarognl-2.6.11.jaroro-2.0.8.jarspring-hibernate3.jarspring.jarstruts-config.xmlstruts-core-1.3.5.jarstruts2-codebehind-plugin-2.0.9.jarstruts2-config-browser-plugin-2.0.9.jarstruts2-core-2.0.9.jarstruts2-jasperreports-plugin-2.0.9.jarstruts2-jfreechart-plugin-2.0.9.jarstruts2-jsf-plugin-2.0.9.jarstruts2-pell-multipart-plugin-2.0.9.jarstruts2-plexus-plugin-2.0.9.jarstruts2-sitegraph-plugin-2.0.9.jarstruts2-sitemesh-plugin-2.0.9.jarstruts2-spring-plugin-2.0.9.jarstruts2-struts1-plugin-2.0.9.jarstruts2-tiles-plugin-2.0.9.jartiles-api-2.0.4.jartiles-core-2.0.4.jartiles-jsp-2.0.4.jarindex.jsp的内容如表,我们暂时不分析。
原创Struts+Spring+hibernate框架整合步骤(多图)
Struts框架应用步骤第1步:向web应用程序添加struts框架的功能注意:必须要选中项目的根节点第2步:创建一个普通的类,一般都归放在web层的包中。
第3步:在类中定义前台页用户输入的数据项,并为这些数据项提供get/set方法第4步:再定义一个处理业务请求的方法,该方法返回String类型第5步:将这个定义了数据项和业务处理方法的类,在struts.xml中注册第6步:编写前台JSP页面,并导入Struts标签库,并且把form的action属性填写上面配置的action的name值Spring框架应用步骤第1步:选中根节点,选spring框架,如下图第2步:在web.xml文件中加上以下代码<listener><listener-class>org.springframework.web.context.ContextLoaderL istener</listener-class></listener>第3步:在spring的配置文件applicationContext.xml中注册各层的对象注意:每层的对象注册时,如果该对象还有属性依赖别的对象,应该为这个属性生成get/set 方法第4步:在struts配置文件加上以下代码,用以交出对象的控制权<constant name="struts.objectFactory"v alue="spring"></constant><include file="struts-default.xml"></include>第5步:修改struts的action的class属性,使之与spring中的对象id属性值对应第6步:将applicationContext.xml复制到WEB-INF目录下,就可以部署启动了。
Struts2,Spring,Hibernate整合步骤及一个简单实例
Struts2,Spring,Hibernate整合步骤(自己笔记)配步骤的例子一个:请参看:Struts2,Spring,Hibernate整合例子一个1.建立web项目2.在web.xml 配置 struts2,和 spring ,<!-- 配置Struts2 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.FilterDispatcher(struts的过滤器)</filter-class></filter><filter-mapping>(加载struts2)<filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 配置Spring --><listener><listener-class>org.springframework.web.context.ContextLoaderListener(spring监听器)</listener-class></listener><!-- 查找spring配置文件 --><context-param>(程序从此处开始加载.xml 文件,并执行)<param-name>contextConfigLocation</param-name><param-value>classpath*:*.xml</param-value></context-param>3.在src根目录下创建struts.xml文件<include file="struts-default.xml"/>固定格式,用到此包4.在src根目录创建hibernate.cfg.xml文件<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN" "/hibernate-configura tion-3.0.dtd"><hibernate-configuration><session-factory><!-- 基本配置 --><property name="dialect">org.hibernate.dialect.Oracle9Dialect</property><property name="show_sql">false</property><property name="format_sql">true</property><propertyname="e_reflection_optimizer">true</property><property name="max_fetch_depth">2</property><property name="default_batch_fetch_size">8</property><property name="jdbc.batch_size">20</property></session-factory></hibernate-configuration>系统给的文件只需要拷贝,都是一些数据库库的基本配置5.在src根目录拷贝struts.properties文件struts.objectFactory = spring 该项是告诉系统用spring来控制hibernate和Actionstruts.action.extension=action 告诉系统访问时以什么结尾。
struts2+spring+hibernate三大框架环境搭建小小总结
struts2+spring+hibernate三大框架环境搭建小小总结:一、环境搭建导入各种jar包什么的就不多说了。
二、整个包结构及模式:1、src文件下,由panyname组成一个大的包结构和各项配置文件组成2、companyname下,分成两部分:A、model层B、功能层3、model层下,包含整个项目所要的数据库表名,按照功能来命名包的名称,A、功能包下包含对应的数据库表的java类,里面包含对应数据库表中所有的字段以及get,set方法B、功能包下包含对应的数据库表的hbm.xml类,里面包含对应数据库表中所有字段的定义4、功能层下,可以只有一个功能模块的一个结构,也可以有多个功能模块的包结构,再在包结构下细分到功能模块的结构A、一个完整的功能模块包下包含:action,dao,service层,1>、对应的action层包含对应功能实现的Action类;2>、对应的dao层包含对应功能实现的数据库操作类;3>、对应的service层包含对应功能实现的各service接口;5、各项配置文件:A、首先包含三个大的配置文件:applicationContext.xml,struts.xml,jdbc.propertiesB、applicationContext.xml实现依赖注入,struts.xml实现各响应功能的配置,jdbc.properties配置数据库相关属性三、页面1、所有的页面,js包都放到WebRoot目录下,2、要配置web.xml文件3、所有的jar包放到WebRoot-WEB-INF-lib包下四、功能操作1、定义好model层,配置好对应的model.hbm.xml映射文件2、将对应的model.hbm.xml映射文件映射到applicationContext.xml文件中3、页面中对应的跳转,实现action,到struts-function.xml去增加对应的Action类和方法4、将struts-function.xml映射文件映射到struts.xml映射文件中5、在功能层下建立对应的功能包,包下包含action,dao,service三个层6、根据struts-function.xml映射文件,建立对应的Action类,在类中创建对应的方法7、在service层和dao层下分别建立对应的接口层和实现接口类8、在对应的applicationContext-function.xml映射文件中将dao层方法映射到对应的service 层中9、service层中,包含iservice层和实现iservice层的service10、在service类中实现对应的iservice定义的方法,并return这个dao对象的方法,11、根据这个方法,在idao接口中创建对应的方法,在dao层的实现类中来具体实现方法的业务12、dao层实现之后,将在Action中调用对应的dao层实现的方法,然后保存结果返回到对应的界面去13、至此,简单的一个业务就实现了。
Struts+Spring+Hibernate整合开发详
Struts+Spring+Hibernate/SSH整合开发详细(一)终于,终于将SSH整合成功了,弄了几个小时,可以休息了(有的朋友弄了半个月,甚至重装了系统也没弄好,哎,庆幸啊)。
碰到问题千万不要放弃,要相信没有解决不了的问题!项目结构图:jsp部分为:index.jsp;success.jsp;fail.jspUserDAO.java,User.hbm.xml自动生成,HibernateSessionFactory是多余的。
相关的配置文件、类文件详细信息,请参看Struts+Spring+Hibernate/SSH整合开发详细二以前是整过这三个框架的,可是工作期间都不曾用过,不知不觉之中,学的东西全忘了。
这次又要开始找工作了,看着招聘启事上都写着:要求熟练掌握Struts,Hibernate或Spring框架……,没得办法,重新学呗。
Spring in Action中文版下载地址(ftp协议)ftp://222.214.218.61/book5/20080228/cf8b35cc-5bcd-4973-b6b7-37a e3ec78391.rar如果无法下载,可以在里重新搜索首先开始搭建项目环境,步骤如下:使用平台:MyEclipse 6.0框架版本:Struts 1.2 Hibernate 3.0 Spring 2.01> 添加过程:<1> 新建项目。
Package Explorer视图下,右键单击 New -> Web Project;<2> 添加Struts框架。
菜单栏MyEclipse -> Capabilities,或者右键单击新建的项目名,选择快捷菜单中的"MyEclipse"下的二级菜单;设置相关的包名后,请写一个Struts的小例子,用来测试Struts是否可用;<3> 添加Spring。
步骤同2所述,只不过这次是加入Spring Capabilities。
Struts2.3.1.2+Spring3.3.1+Hibernate4.1.1 配置步骤
一.搭建struts-2.3.1.21.Jar包:2.配置struts2.3的过滤器,web.xml位置3.web.xml<?xml version="1.0"encoding="UTF-8"?><web-app id="WebApp_ID"version="3.0"xmlns="/xml/ns/javaee"xmlns:xsi="/2001/XMLSchema-instance" xmlns:web="/xml/ns/javaee/web-app_2_5.xsd "xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_3_0.xsd"><!-- struts2单控制器 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.Struts PrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping></web-app>4.配置struts.xml<?xml version="1.0"encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""/dtds/struts-2.3.dtd"><struts><!-- 默认的配置包 --><package name="ssh"extends="struts-default,json-default,jfreechart-default,s pring-default"><action name="login"class="loginAction"><result name="ok">/loginOk.jsp</result><result name="error">/loginError.jsp</result></action></package></struts>5.测试struts二.整合Spring 3.1.1和Struts-2.3.1.21.jar包在配置好的strutsjar的基础上,添加额外Struts jar包:struts2-spring-plugin-2.3.1.2.jarcommons-logging-1.1.1.jarSpring的jar包:org.springframework.core-3.1.1.RELEASE.jarorg.springframework.context-3.1.1.RELEASE.jarorg.springframework.beans-3.1.1.RELEASE.jarorg.springframework.asm-3.1.1.RELEASE.jarorg.springframework.expression-3.1.1.RELEASE.jarorg.springframework.web-3.1.1.RELEASE.jar2.web.xml<?xml version="1.0"encoding="UTF-8"?>web-app id="WebApp_ID"version="3.0"xmlns="/xml/ns/javaee"xmlns:xsi=/2001/XMLSchema-instancexmlns:web="/xml/ns/javaee/web-app_2 _5.xsd"xsi:schemaLocation="/xml/ns/javaee /xml/ns/javaee/web-app_3_0.xsd"><!-- struts2单控制器 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.Str utsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- spring创建工厂监听器--><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 告知spring config location 的存储位置--><context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/classes/applicationContext.xml</par am-value></context-param></web-app>3.配置springapplicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:p="/schema/p"xmlns:tx="/schema/tx"xmlns:context="/schema/context"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans-3.0.xsd/schema/tx/schema/tx/spring-tx-3.0.xsd/schema/aop/schema/aop/spring-aop-3.0.xsd/schema/context/schema/context/spring-context-3.0.xsd"> <context:annotation-config /><context:component-scan base-package="com.excel" /></beans>三.整合Hibernate4.1.11.jar包添加Hibernate jar文件Hibernate压缩包中的lib/required/antlr-2.7.7.jardom4j-1.6.1.jarhibernate-commons-annotations-4.0.1.Final.jarhibernate-core-4.1.1.Final.jarhibernate-jpa-2.0-api-1.0.1.Final.jarjavassist-3.15.0-GA.jarjboss-logging-3.1.0.GA.jarjboss-transaction-api_1.1_spec-1.0.0.Final.jar lib/jpa/hibernate-entitymanager-4.1.1.Final.jarlib/optional/c3p0/hibernate-c3p0-4.1.1.Final.jarc3p0-0.9.1.jarSpring中的jar文件org.springframework.aop-3.1.1.RELEASE.jarorg.springframework.jdbc-3.1.1.RELEASE.jarorg.springframework.orm-3.1.1.RELEASE.jarorg.springframework.transaction-3.1.1.RELEASE.jar 其他的Spring支持文件aopalliance.jar -- AOP要用到的jar包以及连接db2的jarDb2jcc.Jar以及支持el表达式的standard.jar2.配置文件<?xml version="1.0"encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:jee="/schema/jee"xmlns:tx="/schema/tx"xmlns:aop="/schema/aop"xmlns:p="/schema/p"xmlns:util="/schema/util"xmlns:tool="/schema/tool" xmlns:context="/schema/context"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd/schema/tx/schema/tx/spring-tx.xsd/schema/aop/schema/aop/spring-aop.xsd/schema/jee/schema/jee/spring-jee.xsd/schema/context/schema/context/spring-context.xsd /schema/util/schema/util/spring-util.xsd/schema/tool/schema/tool/spring-tool.xsd"default-lazy-init="true"default-autowire="byName"> <!--配置数据源 --><bean id="dataSource"class="boPooledDataSource"destroy-method="close"><property name="driverClass"value="com.ibm.db2.jcc.DB2Driver" /><property name="jdbcUrl"value="jdbc:db2://192.168.1.35:50000/ZL_DEMO"/><property name="user"value="db2admin"/><property name="password"value="Forwor888"/></bean><!-- hibernate.cfg.xml Spring config --><bean id="sessionFactory"class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"><!-- connection --><property name="dataSource"><ref local="dataSource"/></property><!-- hibernate自身属性 --><property name="hibernateProperties"><props><prop key="hibernate.show_sql">true</prop><prop key="hibernate.format_sql">true</prop><propkey="hibernate.dialect">org.hibernate.dialect.DB2Dialect</prop> </props></property><!-- 映射文件 --><property name="mappingResources"><list><value>com/forwor/ssh/entity/xml/User.hbm.xml</value></list></property></bean><!-- 注入 --><bean id="userDAO"class="erDAOImpl"> <property name="sessionFactory"><ref local="sessionFactory"/></property></bean><!-- aop --><!-- transaction --><bean id="userBiz"class="erBizImpl"> <property name="userDAO"><ref local="userDAO"/></property></bean><!-- advice --><bean id="transactionManager"class="org.springframework.orm.hibernate4.HibernateTransactionManager "><property name="sessionFactory"><ref local="sessionFactory"/></property></bean><!-- 事务处理 --><bean id="transactionInterceptor"class="org.springframework.transaction.interceptor.TransactionInterce ptor"><property name="transactionManager"><ref local="transactionManager"/></property><property name="transactionAttributes"><props><prop key="register">PROPAGATION_REQUIRED</prop><!--hibernate4必须配置为开启事务否则 getCurrentSession()获取不到--><prop key="get*">PROPAGATION_REQUIRED,readOnly</prop><prop key="find*">PROPAGATION_REQUIRED,readOnly</prop><prop key="select*">PROPAGATION_REQUIRED,readOnly</prop><prop key="query*">PROPAGATION_REQUIRED,readOnly</prop><prop key="sync*">PROPAGATION_REQUIRED</prop><prop key="finish*">PROPAGATION_REQUIRED</prop><prop key="add*">PROPAGATION_REQUIRED</prop><prop key="insert*">PROPAGATION_REQUIRED</prop><prop key="edit*">PROPAGATION_REQUIRED</prop><prop key="update*">PROPAGATION_REQUIRED</prop><prop key="save*">PROPAGATION_REQUIRED</prop><prop key="remove*">PROPAGATION_REQUIRED</prop><prop key="delete*">PROPAGATION_REQUIRED</prop><propkey="*">PROPAGATION_REQUIRED,ng.Exception</prop></props></property></bean><!-- autoproxy 自动创建代理--><bean id="ProxyCreator"class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyC reator"><property name="beanNames"><list><value>*Biz</value></list></property><property name="interceptorNames"><list><value>transactionInterceptor</value></list></property></bean><bean id="loginAction"class="com.forwor.ssh.web.LoginAction" scope="prototype"><property name="userBiz"><ref local="userBiz"/></property></bean></beans>。
struts+spring+hibernate三个框架的整合
struts+spring+hibernate三个框架的整合准备三个框架结合的lib包Spring3结合Struts2的步骤如下:1:开启Struts2结合Spring3,在struts.xml中添加如下语句:java代码:<constant name="struts.objectFactory" value="spring"/>2:在web.xml中添加listener,如下:java代码:<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>3:在web.xml中指定需要初始读取的spring配置⽂件,如下:java代码:<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value></context-param>5.当然别忘了加上Struts2⾃⼰的filter4:在struts.xml中Action配置的时候,如下:java代码:<action name="testAction" class="springBeanName"><result name="success">/index.jsp</result></action>5:在Spring中正常定义Bean就可以了,把Action定义成为Bean,如下:java代码:<bean id="testAction" class="com.bjpowernode.test.web.TestActioin"><property name="ebi" ref="testEbi"/></bean>6:在Struts的Action中,就可以通过依赖注⼊的⽅式来注⼊需要使⽤的接⼝了。
Struts2+Hibernate+Spring基本搭建
10)guid 在MS SQL Server 和 MySQL 中使用数据库生成的GUID字符串。
11)select 通过数据库触发器选择一些唯一主键的行并返回主键值来分配一个主键。 12)foreign 使用另外一个相关联的对象的标识符。通常和<one-to-one>联合起来使用。
一般而言,利用uuid.hex方式生成主键将提供最好的性能和数据库平台适应 性另外由于常用的数据库,如OracleDB2SQLServerMySql 等,都提供了易用 的主键生成机制(Auto-Increase 字段或者Sequence)我们可以在数据库提供 的主键生成机制上,采用generator-class=native的主键生成方式不过值得注意 的是,一些数据库提供的主键生成机制在效率上未必最佳,大量并发insert数据 时可能会引起表之间的互锁
<!-- 配置事务 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> </bean>
五、Struts2.3.15+Spring3.2.3+Hibernate4.2项目框架搭建
Struts2.3.15+Spring3.2.3+Hibernate4.2.4的框架整合1、新建web项目,导入包1) Struts2.3.15.1/download.cgi#struts23151在struts2.3.15.1的lib包中有100多个jar包,但并不是所有的jar包都需要,基本的jar包包括如下13个(可以参考\app下面struts2-blank项目)。
此外struts与spring集成需要一个jar包2) Spring3.2.4 /download/community其中红色部分为spring中数据库连接所需要的jar包。
3) Hibernate4.2.4 http://in.relation.to/Bloggers/HibernateORM424FinalReleased下载完成后选择需要的jar包。
数据库jar包,包括mysql、oracle数据库。
2、配置1)web项目的配置:web.xmlstruts2的配置spring的配置在spring-framework-3.2.3.RELEASE\docs\spring-framework-reference\html打开spring-web.html文件。
进行listener的配置。
进行context-param的配置。
并对spring的配置文件的位置进行修改。
2)Struts配置:struts.xml在下载的struts jar包中选择一个struts.xml文件首先进行constant的设置,完成spring和struts的整合。
其次完成各个action的配置,这部分将在后面的开发中完善。
3)Hibernate的配置:把hibernate的配置信息放在spring配置文件中,故hibernate.cfg.xml不需要生成。
4)Spring的配置:applicationContext.xml在项目的根路径下创建Spring配置文件applicationContext.xml设置Spring配置文件的路径和文件名点击finish。
Struts2+Spring+Hibernate框架整合总结详细教程
Struts2+Spring+Hibernate框架整合总结详细教程⼀.SSH三⼤框架知识总结 Struts 2是Struts的下⼀代产品,是在 struts 1和WebWork的技术基础上进⾏了合并的全新的Struts 2。
其全新的Struts 2的与Struts 1的体系结构差别巨⼤。
Struts 2以WebWork为核⼼,采⽤的机制来处理⽤户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。
虽然从Struts 1到Struts 2有着太⼤的,但是相对于WebWork,Struts 2的变化很⼩。
⼀ Struts2⼯作原理 在Struts2框架中的处理⼤概分为以下⼏个步骤 1 客户端初始化⼀个指向Servlet容器(例如Tomcat)的请求 2 这个请求经过⼀系列的过滤器(Filter)(这些过滤器中有⼀个叫做ActionContextCleanUp的可选过滤器, 这个过滤器对于Struts2和其他框架的集成很有帮助,例 如:SiteMesh Plugin) 3 接着FilterDispatcher被调⽤,FilterDispatcher询问ActionMapper来决定这个请求是否需要调⽤某个Action 4 如果ActionMapper决定需要调⽤某个Action,FilterDispatcher把请求的处理交给ActionProxy 5 ActionProxy通过Configuration Manager询问框架的配置⽂件,找到需要调⽤的Action类 6 ActionProxy创建⼀个ActionInvocation的实例。
7 ActionInvocation实例使⽤命名模式来调⽤,在调⽤Action的过程前后,涉及到相关拦截器(Intercepter)的调⽤。
8 ⼀旦Action执⾏完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。
使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境
使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境一、建立Maven工程第一步:第二步:第三步:创建好的项目如下图所示:第四步:注意:这里的JDK要选择默认的,这样别人在使用的时候,如何JDk不一致的话也不会出错,如下图所示:第五步:创建Maven标准目录src/main/javasrc/main/resourcessrc/test/javasrc/test/resources第六步:发布项目:Maven install清除编译过的项目:Maven cleanMaven install命令执行结果如下:OK,Maven工程创建成功!二、搭建Spring3开发环境2.1、下载Spring3需要的jar包1.spring-core2.spring-context3.spring-jdbc4.spring-beans5.spring-web6.spring-expression7.spring-orm在pom.xml中编写Spring3需要的包,maven会自动下载这些包以及相关的依赖jar包。
1<!-- spring3 -->2<dependency>3<groupId>org.springframework</groupId>4<artifactId>spring-core</artifactId>5<version>3.1.2.RELEASE</version>6</dependency>7<dependency>8<groupId>org.springframework</groupId>9<artifactId>spring-context</artifactId>10<version>3.1.2.RELEASE</version>11</dependency>12<dependency>13<groupId>org.springframework</groupId> 14<artifactId>spring-jdbc</artifactId>15<version>3.1.2.RELEASE</version>16</dependency>17<dependency>18<groupId>org.springframework</groupId> 19<artifactId>spring-beans</artifactId>20<version>3.1.2.RELEASE</version>21</dependency>22<dependency>23<groupId>org.springframework</groupId> 24<artifactId>spring-web</artifactId>25<version>3.1.2.RELEASE</version>26</dependency>27<dependency>28<groupId>org.springframework</groupId> 29<artifactId>spring-expression</artifactId> 30<version>3.1.2.RELEASE</version>31</dependency>32<dependency>33<groupId>org.springframework</groupId> 34<artifactId>spring-orm</artifactId>35<version>3.1.2.RELEASE</version>36</dependency>2.2、编写Spring配置文件在src/main/resources目录下创建一个spring.xml文件,如下图所示:spring.xml文件的内容如下:1<?xml version="1.0" encoding="UTF-8"?>2<beans xmlns="/schema/beans"3xmlns:xsi="/2001/XMLSchema-instance"4xmlns:context="/schema/context"5xsi:schemaLocation="/schema/beans6/schema/beans/spring-beans-3.0.xsd7/schema/context8/schema/context/spring-context-3.0.xsd9">1011<!-- 引入属性文件,config.properties位于src/main/resources目录下-->12<context:property-placeholder location="classpath:config.properties"/>1314<!-- 自动扫描dao和service包(自动注入) -->15<context:component-scan base-package="me.gacl.dao,me.gacl.service"/>1617</beans>在src/main/resources目录下创建一个config.properties文件,如下图所示:config.properties文件主要是用来编写一些系统的配置信息,例如数据库连接信息,config.properties文件中的内容暂时先不编写,等整合到Hibernate时再编写具体的数据库连接信息。
第9章 Spring与Struts2、Hibernate框架的整合
第9章Spring与Struts2、Hibernate框架的整合基础一、搭建Struts框架注:导入的jar包与前面课程介绍的不同二、搭建Spring框架1.添加的类库包括AOP、Core、Persistent Core、JDBC、Web库2.修改applicationContext.xml的存储目录为WebRoot/WEB-INF三、搭建hibernate框架1.建立数据库连接2.搭建框架,注意选择的配置文件为applicationContext.xml而不是hibernate.cfg.xml。
1)设置SessionFactory的Bean id为sessionFactory。
2)设置DataSource的Bean Id为dataSource3)取消“Create SessionFactory class”选项4)导入包commons-pool-1.3到lib文件夹。
四、修改web.xml加入Spring监听器配置,至此所有框架搭建完毕。
<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>五、数据库建表六、在工程下创建domain、dao包,反向工程自动生成实体类、配置文件、dao类。
1)反向工程将生成的dao文件2)移动dao类到dao包,修改由于移动dao类后applicationContext.xml出现的错误,并将id名首字母改成小写。
3)为dao类提取出接口。
在工作区右键dao文件-》refactor-》extract interface七、编写service、service接口并配置1)创建service包2)创建service类,定义方法findScoreBySnumber()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
整合SSH框架整合框架版本:hibernate-distribution-3.6.0.Final-dist +spring-framework-2.5.6.SEC01-with-dependencies +struts-2.1.8.1一、搭建工具Windows 、Tomcat 6.0+ 、MyEclipse、SQLServer2008 R2 、Google二、创建工程新建WEB项目工程(MyEclipse),包含web.xml配置文件。
三、添加框架环境Junit4右击新建的项目,选择Build Path —> Add Library —> Junit —> 选择Junit4 —> 确定完成单元测试的添加。
四、添加框架环境Struts21.解压struts-2.1.8.1 ,如下图所示:可在apps文件里,随机选择一个.war文件解压,到WEB-INF→lib下的基础jar文件:复制黏贴添加到项目工程的lib下。
也可将lib下的全部jar(71个)都复制到项目中来,不过很多用不到。
我们崇尚即用即加的原则……2. 配置struts.xml和web.xml文件,如下:web.xml:<?xml version="1.0"encoding="UTF-8"?><web-app xmlns:xsi="/2001/XMLSchema-instance"xmlns="/xml/ns/javaee"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0"><display-name>ItcastOA</display-name><!-- 配置Struts2的核心的过滤器 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndE xecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>struts.xml:<?xml version="1.0"encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""/dtds/struts-2.0.dtd"><struts><!-- 配置为开发模式 --><constant name="struts.devMode"value="true"/><!-- 把扩展名配置为action --><constant name="struts.action.extension"value="action"/><!-- 把主题配置为simple --><constant name="struts.ui.theme"value="simple"/><package name="default"namespace="/"extends="struts-default"></package><!-- Add packages here --></struts>五、添加框架环境Hibernate3.61.添加jar包:核心包hibernate3.jar、依赖包:...\lib\required中的所有jar包、hibernate-jpa-2.0-api-1.0.0.Final.jar、c3p0-0.9.1.jar(数据库连接池必须)、sqljdbc4.jar(sqlserver 数据库驱动)。
至此jar包添加OK。
2.添加hibernate.cfg.xml、***.hbm.xml配置文件。
配置文件如下:hibernate.cfg.xml:<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""/dtd/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><!--1.数据库连接信息 --><propertyname="dialect">org.hibernate.dialect.SQLServerDialect</property><propertyname="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver </property><propertyname="connection.url">jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseNam e=test</property><property name="ername">sa</property><property name="connection.password">sqlserver</property><!--2.其他配置 --><property name="show_sql">true</property><property name="hbm2ddl.auto">update</property><!--3.导入映射文件 --><mapping resource="cn/itcast/oa/domain/UsersInfo.hbm.xml"/></session-factory></hibernate-configuration>UsersInfo .hbm.xml:<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN""/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="cn.itcast.oa.domain"><class name="UsersInfo"table="itcast_users"><id name="id"><generator class="native"/></id><property name="name"/></class></hibernate-mapping>六、添加框架环境Spring2.51.添加jar包,核心包spring.jar、依赖包:aspectjrt.jar、aspectjweaver.jar、cglib-nodep-2.1_3.jar、commons-logging.jar2.添加applicationContext.xml配置文件,修改如下:applicationContext.xml:<?xml version="1.0"encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:tx="/schema/tx"xmlns:aop="/schema/aop"xmlns:context="/schema/context"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans-3.0.xsd /schema/tx/schema/tx/spring-tx-3.0.xsd/schema/aop/schema/aop/spring-aop-3.0.xsd/schema/context/schema/context/spring-context-3.0.xsd "><!-- 自动扫描(自动注入) --><context:component-scanbase-package="cn.itcast.oa"></context:component-scan></beans>七、整合Structs2与Spring1.为什么整合?Spring中有IOC容器,来管理对象,整合就是为了让Struts2中的action由IOC容器管理,从容器中管理对象,可以方便对对象注入属性,让Struts2对象管理的那一块变得更强大,由Spring管理。