關於Spring Data Rest的一些總結

2021-10-10 15:08:19 字數 1310 閱讀 4160

最近一直在開發一些基於 spring data rest 的專案。在此過程中,隨著開發工作的不斷深入,對 spring data rest 的了解也越來越深。享受著 spring data rest 帶來的便捷,也忍受著它帶來的不便。

spring data rest 的目標是提供堅實的基礎,從而使用 http rest 語義來開放 crud 操作到你的 jpa 庫管理的實體。

spring data rest 提供了一系列的功能特性,來幫助開發者減少重複工作:

在實際的開發過程中,總結出了一些 spring data rest 的適用場景:

在使用過程中,發現一些實際開發中的常見的需求,在使用 spring data rest 後,實現起來變得複雜了許多。

使用 spring data rest 後,按通用方式下配置的***不生效,無法攔截住 spring data rest 提供的 restful。需要特殊配置:

@bean

}

@component

public class beforecreateeventlistener 

if (relatedtransaction.getstate() == null) 

} else if (source instanceof relatedproject) else if (source instanceof relatedcompany)}}

}

所有模型的資料建立都會發布 beforecreateevent,所以在處理資料時就需要對資料型別進行判斷。這種情況下,很容易就會將多個模型的資料加工的處理邏輯耦合到一起。

在儲存資料時,提供了 event 供開發者處理資料,但是在查詢資料的時候卻沒有提供相應的資料處理機制,所有對於 vo 資料的加工,開發者就沒辦法使用 spring data rest 了。

spring data rest 是基於 spring data jpa 實現的,而 spring data jpa 底層的 orm 是 hibernate 。就像網上大多數言論一樣,hibernate 太複雜了,尤其在處理自定義 sql 的關聯查詢時,讓開發者感覺無從下手。

這裡說的文件少指的是關於 spring data rest 和 spring data jpa 國內的文件太少了。在國內網際網路推崇了 mybatis 之後,國內的部落格、**到處都充斥著 mybatis 的幫助文件,問題解決方案。

在軟體開發領域裡,沒有銀彈,每一種技術、一種框架都有它自己的適用場景。

關於程式關於世界

首先,在學了1年多的軟體設計的基礎上,問下自己 程式是什麼?業務需求是什麼?程式有什麼用?什麼是演算法?什麼是資料庫?或許每個人的理解不同,會給出不同的答案。那麼自己的理解 程式是乙個讓計算機工作的流程,在程式寫好之後,計算機就會按照,程式設計師定義好流程在執行。其實很多時候,乙個程式的好壞,在於乙...

關於血液關於軟體

1 自然沉降法 將血袋垂直吊掛於4 2 冰箱內,使紅細胞自然下沉1 3d,或將血袋呈70 80 角立於冰箱,需用時,用一次性分漿器分出血漿,制得濃縮紅細胞。2 洗滌法 一般用生理鹽水反覆洗滌3 6次。經洗滌的紅細胞,除白細胞和血小板減少外,血漿蛋白也極少,紅細胞中殘存的血漿蛋白含量約為原總蛋白的1 ...

關於冷漠,關於愛情

我不知道為什麼今天又莫名其妙開始思考愛情這件事,隨之就解決了我一直無法面對冷漠這件事 被冷漠是我始終無法消化的一件事,每當遇見冷漠時,我總會覺得就像一團火把自己燒得面目全非,但對方卻毫無傷害。但我突然懂了,遇到冷漠時,體面的離開即可 在乎你的人一定會在你離開後,找到你跟你解釋為什麼 連解釋都來不及,...