日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

為tomcat動態(tài)添加jndi數(shù)據(jù)源信息

系統(tǒng) 2156 0

我們在開發(fā)項目的時候,總要和數(shù)據(jù)庫打交道,如何獲取數(shù)據(jù)源,以什么樣的方式來獲取,成為了我們即簡單又熟悉而且不得不注意的一個問題。

那么在這里我說三種獲取數(shù)據(jù)源的常用方式:

一、通過配置文件來獲取
  1. 首先在項目的classPath下面,建立一個配置文件,如jdbc.properties。
  2. 通過最原始的方式,解析這個配置文件,然后讀取配置信息,再封裝jdbc信息,從而得到數(shù)據(jù)源。
  3. 使用spring;通過spring去建立dataSource Bean。這個dataSource Bean里的信息同樣來自己于你的配置文件。注意要在配置文件中加入:
        
          <
        
        
          context:property-placeholder 
        
        
          location
        
        
          ="classpath:jdbc.properties"
        
        
          />
        
      
引入靜態(tài)文件

???? 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
        
        
          >
        
      
dataSource bean

?  5.配置文件的內容大致如下:

        driverClassName=
        
          com.mysql.jdbc.Driver

url
        
        =jdbc:mysql:
        
          //
        
        
          localhost:3306/springsecurity?allowMultiQueries=true
        
        

username=
        
          root

password
        
        =123456
      
jdbc配置文件
二、通過jndi來獲取
  1. 說明:通過jndi的方式來獲取,通常是在使用spring的情況下使用,當然也可以是其它方式。
  2. 首先,在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"/>
      
jndi Resoure

  3.對于第”2”點的說明:name表示為jndi的名字, driverClassName是使用的驅動類,url當然就是連接相關信息,username是登錄數(shù)據(jù)庫的用戶名,password是數(shù)據(jù)庫密碼。

  4.執(zhí)行好第”2”步過后,要做的事情:在你的spring配置文件中,加入引入jndi的bean,如下:

        <bean id="dataSource" 
        
          class
        
        ="org.springframework.jndi.JndiObjectFactoryBean">  

        <property name="jndiName">  

            <value>java:comp/env/app</value>  

        </property>  

</bean>
      
jndi spring Bean

  5.對于第“4”點的說明:

    在value中java:comp/ env /是前綴,app幫是content.xml中配置的jndi的名字。

三、在MATA-INFO 文件下加入Content.xml方式,讓項目在部署時動態(tài)為tomcat加上jndi數(shù)據(jù)源

  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
        
        
          >
        
      
MATA-INFO Context內容

  2.說明:在mata-info下加入此文件后,然后在spring中采用使用jndi的方式引用數(shù)據(jù)庫即可。這種的好處是。它在你發(fā)布項目的時候,會動態(tài)為你在tomcat的配置文件中加上數(shù)據(jù)源信息,所以就不用我們每次都手動到content.xml文件加入配置了。注意:動態(tài)加的數(shù)據(jù)源信息在servce.xml中。

?

為tomcat動態(tài)添加jndi數(shù)據(jù)源信息


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 吕梁市| 惠东县| 德庆县| 呼和浩特市| 海南省| 洪江市| 高安市| 郑州市| 鄂托克旗| 安平县| 黄平县| 肃宁县| 罗山县| 武川县| 玉屏| 兴山县| 九龙坡区| 铜山县| 徐汇区| 大庆市| 赤壁市| 神农架林区| 乌苏市| 将乐县| 和林格尔县| 黄石市| 黔南| 宽甸| 花莲市| 静海县| 桃江县| 扶绥县| 灵台县| 沧源| 新巴尔虎右旗| 乐陵市| 牟定县| 天镇县| 桓仁| 苗栗县| 揭西县|