spring配置数据源
我们spring配置数据源常用有三种方式
第一种就是一种非常普通的方式
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/smbms?useUnicode=true&characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="root" />
</bean>
我们看得出,这是一种写的很死的方式,下面还有二种就是写的就是比较灵活的方式
使用属性文件配置数据源
我们在Resource文件夹中create(创建)一个文件名为database后缀名为properties的文件
这个文件我们放入我们数据库的数据库JDBC的连接mysql驱动的语句
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/smbms?useUnicode=true&characterEncoding=utf-8
user=root
password=root
下面我们就是进行配置数据源
<!-- 1、配置数据源 -->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>classpath:database.properties</value>
</property>
</bean>
接着在下面添加我们spring的数据库配置
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</bean>
value里面的值填入${}
在{}括号里面填入的你的database文件的对应的数据,进行匹配
还有一种方式就是:
3.使用JNDI配置数据源
如果应用部署在高性能的应用服务器(如Tomcat,WebLogic上),我们可能使用程序服务器的本身提供的的数据源,应用服务器的数据源使用JNDI的方式使用者调用,Spring为此专门提供1引用JNDI资源的JNDIObjectFactoryBean类
使用JNDI的方式配置数据源
前提是必须在应用服务器上配置好数据源,我们以Tomcat为例,配置数据源需要把数据库驱动文件放到Tomcat的lib的目录下,并修改Tomcat的conf目录下的context.xml文件,配置数据源代码
<Resource name="jdbc/news" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="root"
password="root" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/newsmanagersystem?
useUnicode=true&characterEncoding=utf-8"/>
</Context>
然后再回到我们spring配置文件中,添加代码
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<!-- 通过jndiName指定引用的JNDI数据源名称 -->
<property name="jndiName" value="java:comp/env/jdbc/smbms"/>
</bean>
这样子我们就完成spring的配置数据源了