导读:在做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配置完毕。


三、总结

在配置这个文件的过程中,尤其要注意类地址的准确性,还有就是单词是否拼写错误。在类中进行注入的时候,是通过我们的名称进行查找,所以名称一定要对应。没有什么技术含量,只是记录下来,方便自己今后的查看。

posted on 2016-03-04 23:03  何红霞  阅读(172)  评论(0编辑  收藏  举报