1. 程式人生 > >Hibernate使用Tomcat配置的Mysql連線池

Hibernate使用Tomcat配置的Mysql連線池

一個tomcat下的Hibernate程式`總是用不了幾天就掛``

就試著做個連線池用```

下面是我的步驟`:

1: 為Tomcat裝administration tools``

第一步,確認你的Tomcat 中是否已安裝了Administration Web Application。

首先確定Tomcat Service 正在執行。然後在瀏覽器中,鍵入 http://localhost:8080/admin,如果看到Tomcat Web Server Administration Tool 的頁面,說明Administration Web Application 已安裝好了。你可以省點時間,不必讀下文了。如果看到的是
Tomcat's administration web application is no longer installed by default. Download and install the "admin" package to use it. 
那麼這篇文章就算你看對了,就是專門為你寫的。

第二步,下載admin package。

說實話,很多人居然找不到在哪裡下載。這不怪你們。Apache Tomcat 的下載頁面的指示不是很清楚,當然技術文件也不甚詳盡。但是人家已經給你提供了功能強大的open source 軟體,你還能抱怨什麼呢?要怪就怪的工夫沒下到,功夫不夠深。

仔細看,
http://tomcat.apache.org/download-55.cgi , 在下載頁面的Binary Distributions欄下的第四大項,Administration Web Application 即是。

第三步,當解壓下載的Administration Web Application 檔案。

比如放在c:\tom中,你會發現解壓後的檔案為 c:\tom\apache-tomcat-5.5.17。 這時鍵入 

http://localhost:8080/admin 去檢驗admin,會發現Tomcat什麼都沒有改變。因為解壓的admin檔案還沒有配置到Tomcat 的系統中。下面的步驟告訴你如何將admin檔案配置到Tomcat 的伺服器中。

第四步,將 c:\tom\apache-tomcat-5.5.17\conf\Catalina\localhost\admin.xml的
admin.xml 檔案拷貝到c:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\Catalina\localhost. 的資料夾中。注意一定要放在正確的路徑的資料夾中。

第五步,
將c: \tom\apache-tomcat-5.5.17\server\webapps中的admin整個資料夾拷貝到c:\Program Files\ Apache SoftwareFoundation\Tomcat5.5\server\webapps 資料夾中。

第六步,用具有編輯功能的notepad等開啟 c:\Program Files\Apache Software Foundation\Tomcat 5.5 \conf\中的tomcat-users.xml 檔案。在</tomcat-user>最後一行之前,加入下列一行
<user username=”admin” password=”tomcat” roles=”admin, manager”/>
注意username/password可以是你喜歡的任意組合,但roles=”admin” 不可隨意改動。

第七步,重啟Tomcat Server,在web瀏覽器中鍵入 
http://localhost:8080/admin, 這時你如果能看到 Tomcat Server Web Administration Tool 的login介面, 就大功告成。若是還看不到上述頁面,可檢查瀏覽器的代理伺服器的設定,使之能夠接受localhost。

2: 配置Tomcat中Mysql的連線池`

第一步,啟動Tomcat伺服器,開啟瀏覽器,輸入(其中localhost是名稱伺服器或稱為主機),
進入管理介面的登陸頁面,這時候請輸入原來安裝時要求輸入的使用者名稱和密碼,登陸到管理介面,

第二步,選擇Resources-Data sources進入配置資料來源介面,選擇
Data Source Actions ->選擇Create New Data Source,進入配置詳細資訊介面
主要內容例如下:
JNDI Name: ->jdbc/mysql
Data Source URL ->jdbc:mysql://localhost:3306/test
JDBC Driver Class-> org.gjt.mm.mysql.Driver

第三步,修改\conf\Catalina\localhost目錄下建立一個xml檔案,名稱為你所釋出的web應用的名稱.xml,(如testpool.xml)開啟新增內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
      name="jdbc/mysql"
      type="javax.sql.DataSource"
      password="123456"
      driverClassName="org.gjt.mm.mysql.Driver"
      maxIdle="2"
      maxWait="50"
      username="root"
      url="jdbc:mysql://localhost:3306/test"
      maxActive="4"/>

</Context>
內容同conf/server.xml中<GlobalNamingResources>
<Resource
      name="jdbc/mysql"
      type="javax.sql.DataSource"
      password="123456"
      driverClassName="org.gjt.mm.mysql.Driver"
      maxIdle="2"
      maxWait="50"
      username="root"
      url="jdbc:mysql://localhost:3306/test"
      maxActive="4"/>
</GlobalNamingResources>

少了這一步會報錯:Cannot create JDBC driver of class '' for connect URL 'null'

第四步,修改web.xml

開啟%TOMCAT_HOME%\conf\web.xml,在的前面新增以下內容:
    <resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/mysql</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>
    注意res-ref-name填寫的內容要與在上文提到的JNDI Name名稱一致。

第五步,給Tomcat新增mysql驅動

到Mysql的官方網站下載mysql-connector-java-5.1.5.zip`解壓出裡面的mysql-connector-java-5.1.5.bin`放到\common\lib下```

到這裡,配置工作就基本完成了!

3: 配置Hibernate`讓它使用app server的連線池`

在<session-factory>中新增
     <property name="connection.datasource">
                     java:/comp/env/jdbc/myql
      </property>
     <property name="dialect">org.hibernate.dialect.MySQLDialect</property>

注意上面幾個jdbc/myql`要一致```