Spring環境下JNDI的使用


上一篇記錄的使JNDI的簡單使用,今天記錄的是Spring + JNDI的配置。

一、配置JNDI的數據源

數據源有兩種配置方式:

1、將數據源配置在tomcat等web容器中(以tomcat為例),這樣做的好處就是運行在配置過JNDI數據源的web容器下的項目都可以使用該數據源,也就是說在容器中配置好數據源之后,數據源在該web容器中是共享的。

配置方法:在tomcat安裝目錄下,打開conf文件夾,打開context.xml文件,在<context></context>標簽之內插入如下代碼:

<Resource name="mysql" 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/test?useUnicode=true&characterEncoding=utf-8" />

  注:username,password,url需要根據自己的實際情況修改。

2、將數據源配置在項目中,這樣做的好處就是為每一個項目單獨指定一個數據源,也就是說,數據源不會共享。

配置方法:在項目路徑下新建一個文件夾/src/main/webapp/META-INF/context.xml如果沒有可自行創建。代碼如下:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <Context reloadable="true">
 3     <Resource name="jdbc/mybatis" auth="Container" type="javax.sql.DataSource"
 4               maxActive="100" maxIdle="30" maxWait="10000"
 5               username="root" password="root"
 6               driverClassName="com.mysql.jdbc.Driver"
 7               url="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&amp;characterEncoding=utf-8&amp;autoReconnect=true&amp;useSSL=true"
 8               removeAbandoned="true"
 9               removeAbandonedTimeout="10"
10               logAbandoned="true"/>
11 </Context>

  注:username,password,url需要根據自己的實際情況修改。

二、Spring的配置文件

在spring-mvc.xml的配置文件中添加如下代碼:

1     <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
2         <property name="jndiName" value="java:comp/env/mysql"/>
3     </bean>

注:java:comp/env是固定寫法,后面的mysql是自己起的名字,我當作標識來理解,因為用到的是mysql數據庫,說以實用mysql來標識。這里名字必須和context.xml文件中配置的名字相同,否則在啟動項目的時候就會報錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM