聊一聊:MyBatis和Spring Data JPA的選擇問(wèn)題

從個(gè)人開(kāi)發(fā)角度來(lái)說(shuō),Spring Data JPA更好用,是因?yàn)殚_(kāi)發(fā)起來(lái)更快。
但從團(tuán)隊(duì)角度,我們希望更好的維護(hù)性,spring data jpa就差一些,或者說(shuō)對(duì)后期人的要求更高。
很容易出現(xiàn)這種情況:
監(jiān)控系統(tǒng)發(fā)現(xiàn)某個(gè)慢查詢了,運(yùn)維把SQL發(fā)到開(kāi)發(fā)群里,大家自查一下。此時(shí)很可能發(fā)現(xiàn)根本沒(méi)人回應(yīng),都說(shuō)沒(méi)有這句SQL。然后運(yùn)維定位到某個(gè)庫(kù),找到這個(gè)庫(kù)的使用人,讓他去看。他可能也就拿著SQL全局去搜,發(fā)現(xiàn)還是搜不到。
如果這個(gè)人責(zé)任心不強(qiáng),可能就說(shuō) 沒(méi)找到這個(gè)SQL,責(zé)任心強(qiáng)調(diào)的,對(duì)Spring Data JPA熟悉點(diǎn)的,就要開(kāi)始去分析這個(gè)SQL可能在哪里,然后找到對(duì)應(yīng)的實(shí)現(xiàn)地方去修改。
這就是Spring Data JPA在團(tuán)隊(duì)作戰(zhàn)時(shí)候,容易引發(fā)維護(hù)成本高的真實(shí)場(chǎng)景。
P.S. 我開(kāi)發(fā)自己獨(dú)立產(chǎn)品的時(shí)候,還是喜歡用它的,因?yàn)樽约涸偈煜げ贿^(guò),不會(huì)有這樣的場(chǎng)景。所以果斷選擇,但團(tuán)隊(duì)作戰(zhàn),我還是會(huì)選在MyBatis。
那么你怎么看呢?留言區(qū)見(jiàn)!
往期推薦

