首页 > 代码库 > Spring的DataSource配置、将Hibernate配置全部写到Spring配置

Spring的DataSource配置、将Hibernate配置全部写到Spring配置

DataSource可以集中管理数据库连接,减少维护工作量,使部署更简单;
Spring的DataSource配置:(Spring数据源配置)这里使用dbcp,还有很多其他的如c3p0,jdbc,jndi等
DataSource和定义普通Bean一样,指定id、类别,注入属性;
站点停止时,应该调用DataSource的close方法,通过destroy-method属性配置实现;

1,在Spring配置文件配置DataSource的bean:

	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="username" value=http://www.mamicode.com/"${jdbc.username}">>
class="org.apache.commons.dbcp.BasicDataSource" :是DataSource实现类
配置SessionFactory ,注入:

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<!-- <property name="configLocation" value=http://www.mamicode.com/"classpath:hibernate.cfg.xml"> -->>
2,数据库连接信息写在属性文件中,在src新建配置文件:jdbc.properties

jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://127.0.0.1:3306/jboa
jdbc.username = root
jdbc.password = jerome
在Spring配置文件引入jdbc.properties配置文件,采用PropertyPlaceholderConfigurer可以引入属性文件,在Spring配置文件中采用${jdbc.url}的方式引用属性值

<bean id="DBconfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="locations">
			<value>classpath:jdbc.properties</value>
		</property>
	</bean>
接下来可以把一下的Hibernat的配置数据连接信息注释:

	<property name="connection.url">jdbc:mysql://127.0.0.1:3306/jboa</property>
	<property name="connection.username">root</property>
	<property name="connection.password">jerome</property>
	<property name="connection.driver_class">com.mysql.jdbc.Driver</property> 
3,配置hibernateProperties属性,用到了Property类型的属性的配置配置SessionFactory :

	<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<!-- <property name="configLocation" value=http://www.mamicode.com/"classpath:hibernate.cfg.xml"> -->>Hibernate可以注释:

	<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
	<property name="hbm2ddl.auto">false</property>
	<property name="show_sql">true</property>
5,通过mappingDirectoryLocations 或者mappingLocations属性配置映射文件位置,把所有的资源文件引进Spring配置:配置SessionFactory

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<!-- <property name="configLocation" value=http://www.mamicode.com/"classpath:hibernate.cfg.xml"> -->>DataSource指定一个方法关闭:

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
配置好了。Hibernate可以删除了;运行测试成功;