我們在開發項目的時候,總要和數據庫打交道,如何獲取數據源,以什么樣的方式來獲取,成為了我們即簡單又熟悉而且不得不注意的一個問題。
那么在這里我說三種獲取數據源的常用方式:
一、通過配置文件來獲取
- 首先在項目的classPath下面,建立一個配置文件,如jdbc.properties。
- 通過最原始的方式,解析這個配置文件,然后讀取配置信息,再封裝jdbc信息,從而得到數據源。
- 使用spring;通過spring去建立dataSource Bean。這個dataSource Bean里的信息同樣來自己于你的配置文件。注意要在配置文件中加入:
<
context:property-placeholder
location
="classpath:jdbc.properties"
/>
???? 4.Spring中的dataSource bean大致如下:
<
bean
id
="dataSource"
class
="org.apache.commons.dbcp.BasicDataSource"
destroy-method
="close"
>
<
property
name
="driverClassName"
value
="${driverClassName}"
/>
<
property
name
="url"
value
="${url}"
/>
<
property
name
="username"
value
="${username}"
/>
<
property
name
="password"
value
="${password}"
/>
<
property
name
="maxActive"
value
="20"
/>
<
property
name
="initialSize"
value
="1"
/>
<
property
name
="maxWait"
value
="60000"
/>
<
property
name
="maxIdle"
value
="20"
/>
<
property
name
="minIdle"
value
="3"
/>
<
property
name
="removeAbandoned"
value
="true"
/>
<
property
name
="removeAbandonedTimeout"
value
="180"
/>
<
property
name
="connectionProperties"
value
="clientEncoding=UTF-8"
/>
</
bean
>
? 5.配置文件的內容大致如下:
driverClassName=
com.mysql.jdbc.Driver
url
=jdbc:mysql:
//
localhost:3306/springsecurity?allowMultiQueries=true
username=
root
password
=123456
二、通過jndi來獲取
- 說明:通過jndi的方式來獲取,通常是在使用spring的情況下使用,當然也可以是其它方式。
- 首先,在tomcat的config目錄下的context.xml文件中,加入如下語句:
<Resource driverClassName="com.mysql.jdbc.Driver" maxActive="120" maxWait="5000" maxldle="10" name="app" type="javax.sql.DataSource" url="jdbc:mysql://127.0.0.1:3306/goldApp?allowMultiQueries=true" username="root" password="123456"/>
3.對于第”2”點的說明:name表示為jndi的名字, driverClassName是使用的驅動類,url當然就是連接相關信息,username是登錄數據庫的用戶名,password是數據庫密碼。
4.執行好第”2”步過后,要做的事情:在你的spring配置文件中,加入引入jndi的bean,如下:
<bean id="dataSource"
class
="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/app</value>
</property>
</bean>
5.對于第“4”點的說明:
在value中java:comp/ env /是前綴,app幫是content.xml中配置的jndi的名字。
三、在MATA-INFO 文件下加入Content.xml方式,讓項目在部署時動態為tomcat加上jndi數據源
1.首先,在MATA-INFO下建文件: Context.xml
?????? 文件內容如下:
<?
xml version="1.0" encoding="UTF-8"
?>
<
Context
>
<
Resource
driverClassName
="com.mysql.jdbc.Driver"
maxActive
="120"
maxWait
="5000"
maxldle
="10"
name
="app"
type
="javax.sql.DataSource"
url
="jdbc:mysql://192.168.10.105:3306/springsecurity?allowMultiQueries=true"
username
="root"
password
="123456"
/>
</
Context
>
2.說明:在mata-info下加入此文件后,然后在spring中采用使用jndi的方式引用數據庫即可。這種的好處是。它在你發布項目的時候,會動態為你在tomcat的配置文件中加上數據源信息,所以就不用我們每次都手動到content.xml文件加入配置了。注意:動態加的數據源信息在servce.xml中。
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

