代理的方式
為什么老師這里用的實(shí)現(xiàn)類獲取代理,并沒有在aop:config中用proxy-target-class="true"來強(qiáng)制使用cglib代理都有用,這樣的話不應(yīng)該用接口來獲取代理類嗎?
為什么老師這里用的實(shí)現(xiàn)類獲取代理,并沒有在aop:config中用proxy-target-class="true"來強(qiáng)制使用cglib代理都有用,這樣的話不應(yīng)該用接口來獲取代理類嗎?
2018-05-27
舉報(bào)
2018-06-24
若目標(biāo)對(duì)象實(shí)現(xiàn)了若干接口,spring使用JDK的java.lang.reflect.Proxy類代理。?
優(yōu)點(diǎn):因?yàn)橛薪涌?,所以使系統(tǒng)更加松耦合?
缺點(diǎn):為每一個(gè)目標(biāo)類創(chuàng)建接口
若目標(biāo)對(duì)象沒有實(shí)現(xiàn)任何接口,spring使用CGLIB庫(kù)生成目標(biāo)對(duì)象的子類。?
優(yōu)點(diǎn):因?yàn)榇眍惻c目標(biāo)類是繼承關(guān)系,所以不需要有接口的存在。?
缺點(diǎn):因?yàn)闆]有使用接口,所以系統(tǒng)的耦合性沒有使用JDK的動(dòng)態(tài)代理好。