簡體   English   中英

沒有數據庫的休眠/JPA

[英]Hibernate/JPA without DB

想知道是否有可能完全擺脫 SQL 依賴。 假設我正在編寫與 DB 通信的測試,這引入了管理 DB 模式的需要,這非常麻煩,因為內存 DB 通常與生產類型的 DB 不匹配。

是否可以使用 Hibernate/JPA 進行測試並且沒有下划線 DB Schema?

到目前為止,我知道兩種選擇,我想在這里擴大我的知識,如果還有其他可能性,請分享。

  1. 模擬冬眠
  2. 使用偽造的JDBC 驅動程序

或者我應該只專注於模擬 DAO 層而不是在這上面浪費時間? 健全性檢查 JPA 實體與 DB 是完全不同的故事。

您害怕內存數據庫和生產數據庫之間的區別嗎? 但是您不擔心您的兩個“模擬”選項和生產之間的巨大差異?

從我的角度來看,任何用於測試的生產數據庫的替換都會以某種方式產生誤報。 我猜想內存數據庫最能模擬真實環境。 特別是如果您使用H2 之類的嘗試支持不同 SQL 方言的東西。

只要您只編寫小型和封裝的單元測試,DAO 層的模擬也可能有所幫助。 但是,一旦您編寫集成測試,您就需要以某種方式提供一個數據庫。

不 - 如果沒有數據庫模式或連接,Hibernate 就無法工作。

暫無
暫無

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

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