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為您記住它們:其程式碼檢查始終在您的身邊。
相關文章
- 面試官問我:什麼是訊息佇列?什麼場景需要他?用了會出現什麼問題?面試佇列
- 原始碼分析 Mybatis 的 foreach 為什麼會出現效能問題原始碼MyBatis
- 伺服器過載會有什麼問題伺服器
- 網頁出現404頁面,是什麼問題?網頁
- RAG能解決大模型的什麼問題?不能解決什麼問題?大模型
- 因果迷境:為什麼我們會問“為什麼”?
- JSONP的原理是什麼?解決什麼問題?JSON
- 什麼是P問題、NP問題和NPC問題
- 多執行緒的出現是要解決什麼問題的? 本質什麼?執行緒
- 什麼是智慧礦山?它能解決什麼問題?
- 報表為什麼會沒完沒了?怎麼解決這個問題?
- 為什麼經常會出這個問題? An unknown server-side error occurred while processing the commandServerIDEErrorWhile
- 請你解釋下什麼是浮動和它的工作原理是什麼?同時浮動會引起什麼問題?
- [轉載]什麼是P問題、NP問題和NPC問題
- Redis作為快取可能會出現的問題及解決方案Redis快取
- 前端面試中可能會問到的問題(一)前端面試
- Service Mesh是什麼,為我們解決了什麼問題?
- Promise到底解決了什麼問題?Promise
- 什麼情況下會出現css阻塞?CSS
- 什麼情況下會出現js阻塞?JS
- 企業可以自己開發OA系統嗎?會遇到什麼問題?
- 【Java面試】什麼是可重入,什麼是可重入鎖? 它用來解決什麼問題?Java面試
- Python能幹什麼?為什麼會這麼火?Python
- 人是什麼?人生是什麼?人為什麼會變?
- 聊天室軟體原始碼的併發高,可能是什麼問題引發的?原始碼
- net.ipv4.tcp_tw_recycle = 1會導致什麼問題產生TCP
- 為什麼會有公司花1000萬請麥肯錫解決問題?
- 初學者疑惑:C語言中,函式反覆呼叫會有什麼問題?C語言函式
- 企業需要DFSS解決什麼問題?
- 為什麼 TCP 協議有效能問題TCP協議
- ES6解決了什麼問題
- Python能幹什麼?為什麼會火?Python
- 2022招聘季 | 怎麼準備面試?面試官一般會問些什麼問題? | web 前端面試Web前端
- 中間表是什麼?和報表有什麼關係?會帶來怎樣的問題?又如何解決?
- 為什麼區塊鏈(可能會)來到你身邊的物聯網區塊鏈
- Java 14 可能帶來什麼新特性?Java
- PHPer、Laravel 面試可能會遇到的問題及答案PHPLaravel面試
- 為什麼會有kafka訊息系統?小問題藏著大細節!Kafka