导读:在做ITOO项目的时候,就用到了容器+反射,从而运用了依赖注入和依赖查找。如果看过WCF端的配置文件,那么对于这个spring的配置就很容易理解。本篇博客,是对于自己做的一个小项目中所运用到的spring配置进行一个总结,以便于自己以后的框架搭建和回顾。如果不妥,请多指点。
一、spring简介
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)
轻量级开源框架。
二、spring配置
整体介绍:在本项目中对于spring的运用配置,主要可以分为:配置链接池、配置hibernate、配置事务、配置Action、配置Service、配置Dao。下面,就一一进行介绍。
2.1,配置链接池
<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"> <!-- 配置连接池: --> <!-- 引入外部属性文件 --> <context:property-placeholder location="classpath:jdbc.properties"/> <!-- 配置C3P0连接池: --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="${jdbc.driver}"/> <property name="jdbcUrl" value="${jdbc.url}"/> <property name="user" value="${jdbc.user}"/> <property name="password" value="${jdbc.password}"/> </bean> </beans></span>
2.2,配置Hibernate:属性+映射关系
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!-- Hibernate的相关信息 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <!-- 注入连接池 --> <property name="dataSource" ref="dataSource"/> <!-- 配置Hibernate的其他的属性 --> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.connection.autocommit">false</prop> <prop key="hibernate.hbm2ddl.auto">update</prop> </props> </property> <!-- 配置Hibernate的映射文件 --> <property name="mappingResources"> <list> <value>cn/itcast/shop/user/vo/User.hbm.xml</value> <value>cn/itcast/shop/category/vo/Category.hbm.xml</value> <value>cn/itcast/shop/product/vo/Product.hbm.xml</value> <value>cn/itcast/shop/categorysecond/vo/CategorySecond.hbm.xml</value> <value>cn/itcast/shop/order/vo/Order.hbm.xml</value> <value>cn/itcast/shop/order/vo/OrderItem.hbm.xml</value> <value>cn/itcast/shop/adminuser/vo/AdminUser.hbm.xml</value> </list> </property> </bean> </span>
2.3,配置事务
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!-- 事务管理: --> <!-- 事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <!-- 开启注解事务 --> <tx:annotation-driven transaction-manager="transactionManager"/> </span>
2.4,配置Action(以User登录为例)
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!-- 用户模块的Action --> <bean id="userAction" class="cn.itcast.shop.user.action.UserAction" scope="prototype"> <!-- 注入Service --> <property name="userService" ref="userService"/> </bean> </span>
2.5,配置Service(以User登录为例)
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!-- Service的配置 ===========================--> <bean id="userService" class="cn.itcast.shop.user.service.UserService"> <property name="userDao" ref="userDao"/> </bean> </span>
2.6,配置Dao(以User登录为例)
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!-- Dao的配置 ===========================--> <bean id="userDao" class="cn.itcast.shop.user.dao.UserDao"> <property name="sessionFactory" ref="sessionFactory"/> </bean></span>
至此,本项目中的spring配置完毕。
三、总结
在配置这个文件的过程中,尤其要注意类地址的准确性,还有就是单词是否拼写错误。在类中进行注入的时候,是通过我们的名称进行查找,所以名称一定要对应。没有什么技术含量,只是记录下来,方便自己今后的查看。