簡體   English   中英

我可以將數據訪問層作為JAR文件放置在tomcat / shared lib目錄中嗎?

[英]Can I put Data Access layer as JAR file in the tomcat/shared lib directory?

我創建了一個數據訪問層,該層負責使用簡單的SQL查詢從數據庫檢索數據。 我的tomcat包含兩個Web項目。 這兩個項目都包含相同的數據訪問層副本。

Web Project1(WP1)
| ---- DataAccess層

Web Project2(WP2)
| ---- DataAccess層

我想將數據訪問層與Web項目分開,所以我不需要維護多個副本。

WP1-WP2
| |
數據訪問層

將數據訪問層設置為JAR文件並將其放在Tomcat共享的lib文件夾中是最佳實踐嗎?

謝謝,MFH

我不會說這樣做是危險的,但是我絕對不會將這種解決方案視為“最佳實踐”:在所有Web應用程序之間共享庫會增加其中一個庫遇到類路徑沖突的可能性。

例如,假設您部署了另一個Web應用程序,在其中使用(已知或不知道)使用了一個重復的類(幾個具有完全相同的完全合格名稱的類),假設共享庫在應用程序特定的庫之前加載,您最終可能會使用另一類而不是預期的類。 在最好的情況下,您會很輕松地解決問題,但這仍然會讓您失去一些時間。 在最壞的情況下,您的應用程序將無法正常運行。

從我的親身經歷,我已經看到這種情況的發生:某些應用程序是指共享的lib-1.0.jar,而另一些應用程序是與特定於應用程序的lib-2.0.jar一起部署的(該應用程序已有一些改進)。

此外,在您的情況下,這不會造成維護麻煩:只需調整兩個Web應用程序的部署過程,以將相關庫添加為依賴項(如果您使用的是Maven或Ant之類的工具,那么蛋糕)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM