mybatis二級(jí)緩存優(yōu)缺點(diǎn) mybatis和jdbc的區(qū)別?
mybatis和jdbc的區(qū)別?1. Dao層代碼可以通過(guò)現(xiàn)有的插件直接生成,大大提高了編碼效率和準(zhǔn)確性(與手工編碼錯(cuò)誤等相比)。mybatis現(xiàn)有的連接池管理和緩存管理帶來(lái)的代碼性能優(yōu)勢(shì)和可靠性(作
mybatis和jdbc的區(qū)別?
1. Dao層代碼可以通過(guò)現(xiàn)有的插件直接生成,大大提高了編碼效率和準(zhǔn)確性(與手工編碼錯(cuò)誤等相比)。mybatis現(xiàn)有的連接池管理和緩存管理帶來(lái)的代碼性能優(yōu)勢(shì)和可靠性(作為一個(gè)工業(yè)開(kāi)源框架,其代碼已經(jīng)過(guò)了很長(zhǎng)時(shí)間的測(cè)試)。一致的編碼風(fēng)格大大減少了代碼差距4。Mybatis自動(dòng)提供一級(jí)和二級(jí)緩存(需要配置和打開(kāi))、強(qiáng)大的動(dòng)態(tài)SQL和自動(dòng)會(huì)話管理,比手工維護(hù)更方便、更安全。5面向?qū)ο箝_(kāi)發(fā)的效率會(huì)更高。畢竟,它可以自動(dòng)生成數(shù)據(jù)庫(kù)表的模型對(duì)象,編寫(xiě)更少的基本SQL。無(wú)論是否是團(tuán)隊(duì)合作,都建議使用。6不要重復(fù)從結(jié)果集到域的轉(zhuǎn)換。7如果JDBC想得到封裝mybatis的關(guān)聯(lián)和集合,你會(huì)有一個(gè)大腦袋
通常,為了減少數(shù)據(jù)庫(kù)的壓力,我們會(huì)引入緩存。在Dao查詢數(shù)據(jù)庫(kù)之前,先去緩存看看是否有要查找的數(shù)據(jù)。如果有,則使用緩存中的數(shù)據(jù),而不是查詢數(shù)據(jù)庫(kù)。如果沒(méi)有,就去數(shù)據(jù)庫(kù)找。所以你可以分擔(dān)數(shù)據(jù)庫(kù)的壓力。另外,為了使緩存中的數(shù)據(jù)與數(shù)據(jù)庫(kù)同步,我們應(yīng)該添加邏輯代碼來(lái)更新數(shù)據(jù)發(fā)生變化的緩存。這實(shí)際上增加了工作量,但也侵犯了原始代碼。這對(duì)沉迷于代碼清潔的程序員來(lái)說(shuō)是一種傷害。Mybatis框架長(zhǎng)期以來(lái)一直在考慮這些問(wèn)題,因此Mybatis提出了用戶定義的二級(jí)緩存的概念,在不改變?cè)袠I(yè)務(wù)邏輯的情況下,可以方便地引入我們自己的緩存機(jī)制。