2015-10-06 64 views
0

我必須在我的項目中選擇基於JPA或JDBC(包括Spring-JDBC)的解決方案。JPA vs JDBC:現有數據庫的只讀訪問

上下文是一個在固定數據模型上進行只讀訪問的Java應用程序。

數據模型是面向事件的:例如,每5秒就會記錄一個汽車的位置和狀態。

我的第一感覺是JDBC更符合我們的需求,但我是JPA的新手。什麼解決方案是根據你的原因而改編的?

重複更新:我最關心的是有關上下文(只讀固定數據模型)知道,如果JPA是適合我的項目,如果它太複雜了/不適合我的項目

+0

可能重複[Hibernate或JPA或JDBC或?](http://stackoverflow.com/questions/2560500/hibernate-or-jpa-or-jdbc-or) –

回答

2

爲什麼要重新發明輪子? ORM產品已經存在了數十年,並且使用JPA進行了標準化,所以它取決於您要做什麼。除非你完全沒有機會將這個項目擴展或重用,否則爲什麼通過構建自己的框架來使它更復雜?

任何ORM給你中央控制來調整性能選項,甚至說明你想要執行什麼SQL,而不必處理連接池,語句創建,緩存等。我會讓它爲你編寫查詢,因爲它可以根據需要針對不同的數據庫運行,甚至可以在不需要重大應用程序重寫的情況下更改數據庫模型的延期。

+0

我想知道的是關於我們添加比較的複雜性到我們在上下文中從ORM獲得的效用。它可以輕鬆適合任何數據模型嗎? – DenisB

0

如果您必須閱讀使用JDBC的操作,因爲您可以輕鬆地獲取所需的數據。 JPA很好,但我更喜歡JDBC。

0

如果您知道只會運行一個或多個SELECT語句,那麼一定要使用JDBC。

當您希望能夠將數據庫元素作爲java對象進行操作時,JPA旨在用於更復雜的項目中。當然,爲了這種方便,你付出了性能...... JPA有其開銷。

Goodluck!