@OverWrite BlogJava

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            128 隨筆 :: 0 文章 :: 29 評(píng)論 :: 0 Trackbacks

          JNDI是J2EE中一個(gè)很重要的標(biāo)準(zhǔn),通常我們是在EJB編程中用到, 
          Tomcat4.0中提供了在JSP和Servelt中直接使用JNDI的方法,下面談一下在Tomcat4.0中配置和使用JNDI的方法 
          (以通過JNDI連接數(shù)據(jù)庫為例) 
          假設(shè)使用的數(shù)據(jù)庫是mysql,實(shí)驗(yàn)例子在TOMCAT_HOME/webapps/DBTest目錄中 

          A.將mysql的JDBC連接庫mm.mysql-2.0.9-bin.jar放入TOMCAT_HOME/common/lib中 

          B.配置TOMCAT_HOME/conf/serer.xml文件在<Service>;段中加入一個(gè)Context: 
          <Context path="/DBTest" docBase="DBTest" 
          debug="5" reloadable="true" crossContext="true"> 
          </Context> 
          這是DBTest的根路徑,這是為了在DBTest中使用做準(zhǔn)備. 

          C.在上面加入的<Context>;段加入 
          <Resource name="jdbc/TestDB" 
          auth="Container" 
          type="javax.sql.DataSource"/> 

          <ResourceParams name="jdbc/TestDB">
          <parameter> 
          <name>;factory</name> 
          <value>;org.apache.commons.dbcp.BasicDataSourceFactory</value> 
          </parameter> 

          <!-- Maximum number of dB connections in pool. Make sure you 
          configure your mysqld max_connections large enough to handle 
          all of your db connections. Set to 0 for no limit. 
          --> 
          <parameter>
          <name>;maxActive</name>
          <value>;100</value>
          </parameter>

          <!-- Maximum number of idle dB connections to retain in pool. 
          Set to 0 for no limit. 
          -->
          <parameter> 
          <name>;maxIdle</name> 
          <value>;30</value> 
          </parameter> 

          <!-- Maximum time to wait for a dB connection to become available 
          in ms, in this example 10 seconds. An Exception is thrown if 
          this timeout is exceeded. Set to -1 to wait indefinitely. 
          --> 
          <parameter> 
          <name>;maxWait</name> 
          <value>;10000</value> 
          </parameter> 

          <!-- MySQL dB username and password for dB connections --> 
          <parameter> 
          <name>;username</name>; 
          <value>;test</value> 
          </parameter> 
          <parameter> 
          <name>;password</name> 
          <value>;test</value> 
          </parameter> 

          <!-- Class name for mm.mysql JDBC driver -->; 
          <parameter>; 
          <name>;driverClassName</name>; 
          <value>;org.gjt.mm.mysql.Driver</value> 
          </parameter> 

          <!-- The JDBC connection url for connecting to your MySQL dB.--> 
          <parameter> 
          <name>;url</name> 
          <value>;jdbc:mysql://localhost:3306/test</value> 
          </parameter> 
          </ResourceParams> 

          這里每一個(gè)小段都有英文注解,是Tomcat提供的,我們可以將按照Sample加入,主要修改的是driverClassName, 
          url,和用戶帳號(hào);需要強(qiáng)調(diào)的是"jdbc/TestDB"就是JDNI要查找的Name.

          在web.xml中加入 
          <resource-ref> 
          <description>;DB Connection</description> 
          <res-ref-name>;jdbc/TestDB</res-ref-name> 
          <res-type>;javax.sql.DataSource</res-type> 
          <res-auth>;Container</res-auth> 
          </resource-ref> 
          這里的jdbc/TestDb要和C中Resource段的name匹配 

          posted on 2008-04-25 09:02 vesung 閱讀(440) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 临邑县| 无锡市| 元朗区| 通江县| 合肥市| 阳高县| 板桥市| 佛山市| 关岭| 武川县| 偃师市| 共和县| 新巴尔虎右旗| 调兵山市| 长寿区| 眉山市| 五峰| 游戏| 南昌县| 札达县| 来安县| 遵义县| 通州区| 常州市| 乡城县| 新化县| 原阳县| 阳原县| 波密县| 广昌县| 介休市| 德格县| 友谊县| 甘肃省| 云霄县| 从江县| 新晃| 崇礼县| 杭锦后旗| 南丰县| 雅江县|