java jndi tcp_spring配置下通过tomcat的jndi服务连接数据库
在開發OA系統因為采用了spring+hibernate架構,其中數據源很多,采用jdbc注入到spring中,結果時間長了,數據庫容易斷開,改成了jndi,jndi由spring去管理
1、配置jndi文件
文件位置
%TOMCAT_HOME% \conf\Catalina\localhost
文件名
webapp工程的名字.xml。如:若工程名為jndidemo,則文件取名為jndidemo.xml。一般情況下該文件會存在。如果不存在可手動創建
文件內容應該有如下格式:
name="jdbc/jndidemo1"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
password="efnx"
maxIdle="2"
maxWait="5000"
username="efnx"
url="jdbc:oracle:thin:@(description=(address_list=(address=(protocol=TCP)(port=1521)(host=192.168.0.240)))(connect_data=(SERVER = DEDICATED)(SERVICE_NAME = db.efriendnet.com)))"
maxActive="4"/>
根據具體需要修改相應內容。
2、Spring配置文件
在Spring配置文件中增加如下類似內容
java:comp/env/jdbc/jndidemo1
3、持久化配置文件
對持久化層進行依賴注入時,給dataSource屬性注入jndiDataSource即可。如:
4、數據庫驅動
最后別忘了將相應的數據庫驅動拷貝到%TOMCAT_HOME%\common\lib下
注意事項:
根據tomcat版本不同,jndi配置文件的寫法存在差異。現給出說明:
版本:4.x
這個版本的配置文件一般都寫在%TOMCAT_HOME% \conf\server.xml文件中。因為現在基本都在用5.x版本,所以這里就不做詳細說明了。
版本:5.0.xx
這個版本將context的內容獨立了出來放到了%TOMCAT_HOME% \conf\Catalina\localhost下,且不同的工程生成相應的配置文件,但文件格式和4.x類似:如:
factory
org.apache.commons.dbcp.BasicDataSourceFactory
driverClassName
com.microsoft.jdbc.sqlserver.SQLServerDriver
url
jdbc:microsoft:sqlserver://59.151.17.254:1500;DatabaseName=YeeYoo_DB
username
crm
password
crmyeeyoo
maxWait
-1
maxActive
10
版本5.5.xx
該版本中給配置文件格式作了較大改動,使其更加簡潔。格式內容如下:
name="jdbc/jndidemo"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
password="efnx"
maxIdle="2"
maxWait="5000"
username="efnx"
url="jdbc:oracle:thin:@(description=(address_list=(address=(protocol=TCP)(port=1521)(host=192.168.0.240)))(connect_data=(SERVER = DEDICATED)(SERVICE_NAME = db.efriendnet.com)))"
maxActive="4"/>
請根據不同版本編寫相應格式的配置文件否則會出現各種各樣不同的問題。
總結
以上是生活随笔為你收集整理的java jndi tcp_spring配置下通过tomcat的jndi服务连接数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux文件编辑命令详细整理,Linu
- 下一篇: sql怎么撤回update_腾讯SQL“