研究Tomcat結構,解決數據源連接數據庫
2024-09-06 19:01:09
供稿:網友
tomcat服務器是由一系列的可配置俄組件構成的,其中核心的是catalina servlet容器,下面是組件關系
< server>< !--頂層元素,是tomcat實例的頂層元素,可包含一個或多個service-->
< service>< !--連接器元素,包含一個engine元素,以及一個或多個connector元素,這些connector共享同一個engine-->
< connector>< !--實際和客戶交互的組件-->
< engine>< !--容器類元素,可以包含多個host元素-->
< host>< !--定義一個虛擬主機,它可以包含一個或多個web應用-->
< context>< !--使用最頻繁的元素,每個context代表運行在虛擬主機上的應用-->
......................< /context>
嵌套類元素可以加到容器組件中如:< logger>< value>< realm>元素
所以在server.xml中,我們只要添加,在tomcat5.0.x中是沒有context標記的,所以以前在沒有了解目錄結構時候,總是添加位置錯誤
< context path="/data" docbase="data" debug="0" reloadable="true">
< !--這里特別注意,指出了web應用的相對路徑-->
< resource name="jdbc/sunny" scope="shareable" auth="container"
type="javax.sql.datasource">< /resource>
< resourceparams name="jdbc/sunny">
< parameter>
< name>factory< /name>
< value>org.apache.commons.dbcp.basicdatasourcefactory< /value>
< /parameter>
< parameter>
< name>removeabandoned< /name>
< value>true< /value>
< /parameter>
< parameter>
< name>logabandoned< /name>
< value>true< /value>
< /parameter>
< !-- dbcp database connection settings -->
< parameter>
< name>url< /name>
< value>jdbc:mysql://localhost:3306/sony< /value>
< /parameter>
< parameter>
< name>driverclassname< /name>< !--< value>com.mysql.jdbc.driver< /value>-->
< value>org.gjt.mm.mysql.driver< /value>
< /parameter>
< parameter>
< name>username< /name>
< value>root< /value>
< /parameter>
< parameter>
< name>password< /name>
< value>< /value>
< /parameter>
< !-- dbcp connection pooling options -->
< parameter>
< name>maxwait< /name>
< value>3000< /value>
< /parameter>
< parameter>
< name>maxidle< /name>
< value>100< /value>
< /parameter>
< parameter>
< name>maxactive< /name>
< value>10< /value>
< /parameter>
< /resourceparams>
< /context>
在jsp頁面中
javax.naming.context ctx = new javax.naming.initialcontext
datasource ds =(datasource) ctx.lookup("java:comp/env/jdbc/sunny")
connection conn = ds.getconnection(); tomcat服務器是由一系列的可配置俄組件構成的,其中核心的是catalina servlet容器,下面是組件關系
< server>< !--頂層元素,是tomcat實例的頂層元素,可包含一個或多個service-->
< service>< !--連接器元素,包含一個engine元素,以及一個或多個connector元素,這些connector共享同一個engine-->
< connector>< !--實際和客戶交互的組件-->
< engine>< !--容器類元素,可以包含多個host元素-->
< host>< !--定義一個虛擬主機,它可以包含一個或多個web應用-->
< context>< !--使用最頻繁的元素,每個context代表運行在虛擬主機上的應用-->
......................< /context>
嵌套類元素可以加到容器組件中如:< logger>< value>< realm>元素
所以在server.xml中,我們只要添加,在tomcat5.0.x中是沒有context標記的,所以以前在沒有了解目錄結構時候,總是添加位置錯誤
< context path="/data" docbase="data" debug="0" reloadable="true">
< !--這里特別注意,指出了web應用的相對路徑-->
< resource name="jdbc/sunny" scope="shareable" auth="container"
type="javax.sql.datasource">< /resource>
< resourceparams name="jdbc/sunny">
< parameter>
< name>factory< /name>
< value>org.apache.commons.dbcp.basicdatasourcefactory< /value>
< /parameter>
< parameter>
< name>removeabandoned< /name>
< value>true< /value>
< /parameter>
< parameter>
< name>logabandoned< /name>
< value>true< /value>
< /parameter>
< !-- dbcp database connection settings -->
< parameter>
< name>url< /name>
< value>jdbc:mysql://localhost:3306/sony< /value>
< /parameter>
< parameter>
< name>driverclassname< /name>< !--< value>com.mysql.jdbc.driver< /value>-->
< value>org.gjt.mm.mysql.driver< /value>
< /parameter>
< parameter>
< name>username< /name>
< value>root< /value>
< /parameter>
< parameter>
< name>password< /name>
< value>< /value>
< /parameter>
< !-- dbcp connection pooling options -->
< parameter>
< name>maxwait< /name>
< value>3000< /value>
< /parameter>
< parameter>
< name>maxidle< /name>
< value>100< /value>
< /parameter>
< parameter>
< name>maxactive< /name>
< value>10< /value>
< /parameter>
< /resourceparams>
< /context>
在jsp頁面中
javax.naming.context ctx = new javax.naming.initialcontext
datasource ds =(datasource) ctx.lookup("java:comp/env/jdbc/sunny")
connection conn = ds.getconnection();