lombok+JPA可能會出什麼麼問題? - jpabuddy
Lombok是使您的Java程式碼簡潔明瞭的好工具。但是,將其與JPA一起使用時,需要考慮一些事項。在本文中,我們將研究Lombok的濫用如何會損害JPA應用程式的效能,甚至使其崩潰,以及如何避免這種情況,但仍會獲得使用Lombok的好處。
我們開發了JPA Buddy,這是IntelliJ IDEA的外掛,旨在簡化JPA的使用。在為它編寫一行程式碼之前,我們在GitHub上進行了許多專案來了解人們如何使用JPA。事實證明,他們中的許多人都使用lombok作為他們的實體。
在您的JPA專案中使用Lombok絕對很好,但是有一些警告。在分析專案時,我們看到人們一遍又一遍地陷入相同的陷阱。這就是為什麼我們向JPA Buddy引入了許多針對Lombok的程式碼檢查的原因。本文顯示了將Lombok與JPA實體一起使用時可能會遇到的最常見問題。
詳情點選標題,結論:
Lombok使您的程式碼看起來更好,但是與使用任何類似魔術的工具一樣,重要的是要了解其工作原理以及何時使用它。您還可以依靠開發工具為您預測潛在的問題。否則,您可能會意外地損害應用程式的效能,甚至破壞某些內容。
使用JPA和Lombok時,請記住以下規則:
- 使用JPA實體時避免使用lombok的@EqualsAndHashCode和@Data;
- 使用@ToString時始終排除惰性lazy屬性;
- 別忘了用@Builder和@AllArgsConstructor將@NoArgsConstructor新增到實體。
或讓JPA Buddy為您記住它們:其程式碼檢查始終在您的身邊。
相關文章
- 面試官問我:什麼是訊息佇列?什麼場景需要他?用了會出現什麼問題?面試佇列
- 閏秒為什麼會導致linux出現問題Linux
- index為什麼可能會比table大很多Index
- 原始碼分析 Mybatis 的 foreach 為什麼會出現效能問題原始碼MyBatis
- 伺服器過載會有什麼問題伺服器
- JDK1.5 + TOMCAT5 為什麼會出現下列問題呢???JDKTomcat
- ABI解決什麼問題
- 問題[●●●]:什麼是UIKit Dynamics?UI
- 多執行緒的出現是要解決什麼問題的? 本質什麼?執行緒
- 什麼是智慧礦山?它能解決什麼問題?
- 報表為什麼會沒完沒了?怎麼解決這個問題?
- 面試應該問公司什麼問題面試
- 魅族E釋出會什麼時候召開 魅族新品釋出會有什麼亮點
- 面試題。為什麼輸出BBBBB?面試題
- 都100%程式碼覆蓋了,還會有什麼問題?
- PHP Session可能會引起併發問題PHPSession
- 大家看我這段程式碼有什麼問題麼?
- Service Mesh是什麼,為我們解決了什麼問題?
- 【Java面試】什麼是可重入,什麼是可重入鎖? 它用來解決什麼問題?Java面試
- 求助:為什麼用jbuilder連sql2000出問題UISQL
- 企業可以自己開發OA系統嗎?會遇到什麼問題?
- 初學者疑惑:C語言中,函式反覆呼叫會有什麼問題?C語言函式
- Redis作為快取可能會出現的問題及解決方案Redis快取
- Promise到底解決了什麼問題?Promise
- 什麼是解決問題的能力?
- 前端面試中可能會問到的問題(一)前端面試
- Python能幹什麼?為什麼會這麼火?Python
- 蘋果釋出會的All In服務,都有什麼?蘋果
- Python能幹什麼?為什麼會火?Python
- 2022招聘季 | 怎麼準備面試?面試官一般會問些什麼問題? | web 前端面試Web前端
- 為什麼區塊鏈(可能會)來到你身邊的物聯網區塊鏈
- 什麼是六西格瑪,六西格瑪適合解決什麼問題?
- 憑什麼上ERP 上ERP要解決什麼問題(轉)
- Java 14 可能帶來什麼新特性?Java
- 中間表是什麼?和報表有什麼關係?會帶來怎樣的問題?又如何解決?
- 聊天室軟體原始碼的併發高,可能是什麼問題引發的?原始碼
- 為什麼 TCP 協議有效能問題TCP協議
- 企業需要DFSS解決什麼問題?