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的配置數據源了