spring配置详解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
type="org.springframework.web.struts.Delegat ingAct ionProxy" scope="request" <forward <forward </action> 注意里面的 type 属性,这里设置的是 org.springfra mework.web.struts.Dele gatingActionProxy ,正是通过它来 使得和 spring 很好的结合起来,这里你会发现没有具体的 action 类,它是通过 struts 和 spring 的结合处理 (action-servlets-config 文件夹下)的配置文件来实现的,这样 action 类也纳入到了 spring 容器的管理体系中去 了。 validate="true" input="/WEB-INF/jsp/login.jsp"> /> />
2、spring(app-config 文件夹下) app-config 文件夹下主要有 applicationContext_default.xml、a pplicat ionContext_admin.x ml、 applicationContext_order.xml、applicat ionContext.xml、dataAccessContext-loca l.xml 这里主要是设置系统所需要的业务逻辑 bean ,完成符合 spring-beans.dtd 的定义规则
name="success" name="failure"
path="/dispatch.do?def=default" path="/WEB-INF/jsp/login.jsp"
struts 和 spring 的结合就是这样来实现的, 当然除了这种方式以外还有其他的, 可以参考: 关于 struts 中 validate 的几种情况 除了以上的配置信息外,还有几个重要的配置,它是结合 Spring、Tiles、 Va lidator 等框架的润滑剂,主要是通 过 Struts 的 plug-in 技术来实现的,举例如下: <plug-in className="org.springfra mework.web.struts.ContextLoaderPlugIn"> <set-property property="contextConfigLocation"
这些配置信息是整个系统的装配总线,通过这些 x ml 的配置,把所有的资源串在了一起。
Baidu Nhomakorabea
这里还要强调一个信息,这些配置文件都是按照功能模块来划分的,比如现在讲解的这个系统中,除了默认的 default 外,还划分了 order(订单处理系统)、a dmin(后台管理系统),这样设置的优势在于很好的扩展系统, 降低耦合性,同时条理也比较清晰,便于管理。
<plug-in
className="org.apache.struts.tiles.TilesPlugin"> property="definitions-config" /> />
<set-property
value="/WEB-INF/config/tiles-config/t iles -defs-default.x ml" <set-property </plug-in> 实现 Tiles 技术的嫁接 property="moduleAware" value="true"
分别解释一下各个配置文件的主要用途:
想必用过 Spring 的程序员们都有这样的感觉,Spring 把逻辑层封装的太完美了(个人感觉 View 层封装的不是 很好)。以至于有的初学者都不知道 Spring 配置文件的意思,就拿来用了。所以今天我给大家详细解释一下 Spring 的 applicationC ontext.xml 文件。Ok ,还是通过代码加注释的方式为大家演示: 以下是详解 Spring 的 applicationContext.xml 文件代码: <!-- 头文件,主要注意一下编码 --> <?xml version="1.0" encoding="UTF-8"?> <!DOC TYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 建立数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <!-- 数据库驱动,我这里使用的是 Mysql 数据库 <property name="driverC lassName"> <value>com.mysql.jdbc.Driver</value> </property> <!-- 数据库地址,这里也要注意一下编码,不然乱码可是很郁闷的哦! --> <property name="url"> <value> jdbc:mysql://localhost:3306/tie?useUnicode=true&characterEncoding=utf -8 </value> </property> <!-- 数据库的用户名 --> <property name="username"> <value>root</value> </property> <!-- 数据库的密码 --> <property name="password"> <value>123</value> </property> </bean> <!-- 把数据源注入给 Session 工厂 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <!-- 配置映射文件 --> <property name="mappingResources"> <list> <value>com/alonely/vo/User.hbm.xml</value> </list> </property> </bean> -->
<plug-in
className="org.apache.struts.validator.ValidatorPlugIn"> property="pathnames"
<set-property
value="/WEB-INF/config/validation-conf ig/validator-rules -default.x ml, /WEB-INF/config/validation-config/validation-default.xml" </plug-in> 在 Struts 框架中采用 Validator 框架的验证机制 />
<!-- 把 Session 工厂注入给 hibernateTemplate --> <!-- 解释 一下 hibernateTemplate : hibernateTemplate 提供了 很多方 便的方 法, 在执行 时自动 建立 HibernateC allback 对象,例如:load()、get()、save 、delete()等方法。 --> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <constructor-arg> <ref local="sessionFactory" /> </constructor-arg> </bean> <!-- 把 DAO 注入给 Session 工厂 --> <bean id="userDAO" class="com.alonely.dao.UserDAO"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <!-- 把 Service 注入给 DAO --> <bean id="userService" class="com.alonely.service.UserService"> <property name="userDAO"> <ref local="userDAO" /> </property> </bean> <!-- 把 Action 注入给 Service --> <bean name="/user" class="com.alonely.struts.action.UserAction"> <property name="userService"> <ref bean="userService" /> </property> </bean> </beans>
、验证技术(validation-config 文件夹下)
到这里,或许会留意到没有提及 hibernate , 有关 hibernate 的设置,也是通过 spring 来配置的,在后面的 spring 文件中会看到,有关 hibernate.cfg.xml 则存放在 classpath 下,需要用到的 hibernate 属性配置信息 hibernate.properties 也存放在 classpath 下
value="/WEB-INF/config/action-servlets-config/action-servlets-default.xml /WEB-INF/config/action-servlets-config/a ction-servlets-order.x ml /WEB-INF/config/action-servlets-config/a ction-servlets-admin.xml" </plug-in> 通过 Spring 框架的 ContextLoaderPlugIn,把 act ion 类交由 Spring 容器来管理 这里需要说明的一点是:是否需要在 struts-config-default.xml 文件中一起加载所有的 act ion-serv lets 信息,还 是对应着分别加载。当然现在的系统中是一起加载的,不过如果分开加载,也可以很好的分模块开发,这边只是 探讨,作个说明而已。 />
下面分别介绍一下各个主要的配置文件内容 1、struts(struts-config 文件夹下) struts-config 文件夹下主要有 struts-config-default.xml、 struts-conf ig-admin.xml、 struts-config-order.x ml 三个 配置文件 这里放置的是有关 struts 的配置信息,比如 form-bean 、action,有关 form-bean 的配置和一般的 struts 程序没 有什么两样,这里需要说明的是 action 的配置 这里举例一个配置片断: <action name="loginForm" parameter="method" path="/loginAction"
采用 struts+hibernate+spring 开发的一个 web 系统--配置文件介绍
从配置文件说起 在 WEB-INF/config 下有多种配置文件,这里作个介绍,对项目的开发很有意义 主要涉及到了 struts(struts-config 文件夹下) 合处理(action-servlets-config 文件夹下) 模版技术(tiles-config 文件夹下) 、 、spring(app-config 文件夹下) 、struts 和 spring 的结