MySpring dataSource从配置文件获取

大神就不看了。本篇是一个人笔记。

原来的数据库配置文件是写死的。

看代码:Mybatis的配置文件

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName">
			<value>com.mysql.jdbc.Driver</value>
		</property>
		<property name="url">
			<value>jdbc:mysql://localhost:3306/test</value>
			   
		</property>
		<property name="username">
			<value>root</value>
		</property>
		<property name="password">
			<value>admin</value> 
		</property>
	</bean>

	<!-- 指明操作数据库的配置文件位置 -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource"></property>
		<property name="configLocation"
			value="classpath:../config/mybatis/MyBatis-Configuration.xml"></property>
	</bean>

	<!-- 使用事务处理 -->
	<bean id="tm"
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></property>
	</bean>
这里的username,password都是写死的。如今想要一个专门的配置文件来配置数据库。

百度了一下,挺easy。

加入  数据源配置文件的路径。改动一下数据库的配置。

<!-- 数据源 -->
	<context:property-placeholder location="classpath:../config/project/project.properties" />  
  
    <bean id="dataSource"  
        class="org.apache.commons.dbcp.BasicDataSource">  
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />  
        <property name="url" value="jdbc:mysql://${database.ip}:${database.port}/myspring" />  
        <property name="username" value="${database.userName}"></property>  
        <property name="password" value="${database.passWord}"></property>  
    </bean>


WEB-INFconfigprojectproject.properties文件:

database.ip =127.0.0.1
database.port =3306
database.userName =root
database.passWord =admin

改成driverClassName,url,username,password这样的形式也能够。

因为个人项目原因其它地方还要用到数据库port配置。于是url就拼接了一下。

说明一下:

<context:property-placeholder location="classpath:../config/project/project.properties" />  

这里的classpath: 路径指的是 WEB-INF/classes


还设计到一点。BasicDataSource DriverManagerDataSource的差别,这里就不献丑了。

spring的DriverManagerDataSource与apache的BasicDataSource(转)

http://blog.csdn.net/chenyongsuda/article/details/5391963


原文地址:https://www.cnblogs.com/brucemengbm/p/6955565.html