日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

如何在Tomcat中设置JNDI数据库连接池-Spring教程示例

發布時間:2023/12/3 javascript 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何在Tomcat中设置JNDI数据库连接池-Spring教程示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在Spring和Tomcat中設置JNDI數據庫連接池非常容易。 Tomcat服務器文檔提供了有關如何在Tomcat 5、6或7中設置連接池的足夠信息。在這里,我們將結合使用Tomcat 7和Spring框架在Tomcat服務器中創建連接池并在Spring中使用JNDI代碼訪問它們。 在上一篇文章中,我們了解了如何在Spring中為不在Web服務器或應用程序服務器上運行且沒有托管J2EE容器的核心Java應用程序設置數據庫連接池 。 但是如果您要開發Web應用程序,則最好使用服務器托管連接池并使用JNDI訪問它們。 Spring配置將是通用的,并且僅基于Datasource的JNDI名稱,因此它將在任何J2EE服務器(例如Glassfish , WebLogic , JBoss或WebSphere)上運行,直到JNDI名稱相同為止。

順便說一句,Tomcat是我最喜歡的Web服務器 ,由于它與Eclipse和Netbeans等IDE集成在一起,因此我在開發中經常使用它。 我將其用于所有測試和開發目的,許多公司甚至在生產中運行Tomcat來托管Java Web應用程序。

盡管要小心java.lang.OutOfMemoryError:tomcat中的PermGen空間 ,但它可能簡單,快速且非常可靠,這可能會導致Java應用程序中的內存泄漏。 它通常是由于ThreadLocal變量和JDBC驅動程序而發生的,但是您可以通過了解更多信息來避免這種情況

如何在Tomcat和Spring中使用JNDI數據庫連接池

為任何Java Web應用程序配置和運行JNDI數據源連接池 ,分三個步驟 :

1)在服務器中配置數據源并創建JNDI名稱。

2)配置web.xml

3)使用JNDI數據源配置Spring bean

4)在服務器庫中包含JDBC驅動程序庫,例如tomcat / lib

為了在J2EE Web服務器上創建JNDI數據源,您需要遵循服務器文檔。 在Tomcat 6上,您可以簡單地將以下XML放在context.xml以創建Tomcat管理的數據庫連接池:

<<?xml version="1.0" encoding="UTF-8"?> <Context antiJARLocking="true" path="/springDataSourceDemo"> <Resource name="jdbc/springeDataSource"auth="Container"type="javax.sql.DataSource"driverClassName="oracle.jdbc.driver.OracleDriver"url="jdbc:oracle:thin:@localhost:1521:SPRING_TEST"username="root"password="root"removeAbandoned="true"removeAbandonedTimeout="90"logAbandoned="true"maxActive="20"maxIdle="10"maxWait="-1"/> </Context>

資源元素將創建JNDI數據源,可以使用JNDI名稱“ jdbc/springeDataSource ”進行引用。

Tomcat在內部使用DBCP和Commons池庫來管理數據庫連接池。 您可以檢查tomcat/lib目錄中的jar文件tomcat-dbcp.jar ,該文件負責在tomcat服務器內部創建數據庫連接池。

1.

為了從Web應用程序訪問任何服務器資源,您需要在web.xml中指定JNDI資源。

您可以使用以下XML在以下位置聲明JNDI數據源:

<resource-ref><description>Oracle Spring JNDI Datasource</description><res-ref-name>jdbc/springDataSource</res-ref-name><res-type>javax.sql.DataSource</res-type><res-auth>Container</res-auth> </resource-ref>

現在您的Web應用程序將看到在tomcat中創建的名稱為jdbc/springDataSource JNDI數據源。

2.用于訪問JNDI數據源的Spring配置:

該彈簧配置足夠通用,可用于訪問部署在任何J2EE或Java EE Server上的任何JNDI數據源。 它與Tomcat無關。 org.springframework.jndi.JndiObjectFactoryBean用于查找JNDI數據源并與javax.sql.DataSource綁定。

<bean id="springDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"><property name="jndiName" value="java:comp/env/jdbc/springDataSource"/><property name="lookupOnStartup" value="true"/><property name="proxyInterface" value="javax.sql.DataSource"/> </bean>

我在這里使用XML方式聲明一個Spring bean,但是,如果您使用的是Spring 3.0或更高版本,則還可以使用Java Configuration和@Bean批注在Spring應用程序中聲明數據源。

3. Tomcat Lib中的JDBC驅動程序文件

現在的最后一步是確保tomcat lib具有JDBC驅動程序jar文件 。 我通常將JAR文件放在tomcat的lib目錄中,但是您可以將其放在任何有意義的位置,并修改tomcat類路徑以將驅動程序JAR包含到類路徑中。

現在,使用此數據源的其余代碼應保持不變。 您可以從上一篇文章如何在Spring框架中設置數據庫連接池中獲得Spring DAO源代碼。

PS –如果您想深入學習如何使用Spring MVC開發RESTful Web Service,建議您參加Eugen Paraschiv的REST with Spring認證課程 。 使用Spring MVC學習REST的最佳課程之一。

翻譯自: https://www.javacodegeeks.com/2018/04/how-to-setup-jndi-database-connection-pool-in-tomcat-spring-tutorial-example.html

總結

以上是生活随笔為你收集整理的如何在Tomcat中设置JNDI数据库连接池-Spring教程示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。