本文?知識要點:?通過動態(tài)代理來代理對象
situation:目前項目處于0?階段,第一步學(xué)會使用動態(tài)代理來進行代理對象经瓷,動態(tài)代理是mybatis?的項目的核心內(nèi)容
task:學(xué)會動態(tài)代理的原理及使用翠储,?利用Java的反射技術(shù)(Java Reflection)绘雁,在運行時創(chuàng)建一個實現(xiàn)某些給定接口的新類(也稱“動態(tài)代理類”)及其實例(對象),代理的是接口(Interfaces),不是類(Class)援所,也不是抽象類庐舟。在運行時才知道具體的實現(xiàn),spring aop就是此原理住拭。
action:
1.編寫映射器代理類挪略,代理類需要實現(xiàn)InvocationHandler历帚,并重寫invoke?方法,invoke?方法里可定義被代理后的操作杠娱,任何使用改代理類?生成的類對象挽牢,在調(diào)用方法時都會進入invoke?方法里。
2.編寫代理類工廠墨辛,用于實例化代理類,此處用到工廠模式趴俘,工廠模式是將類的實例化單獨分開睹簇;
3.?編寫被代理的類
4.? 測試
result:知道動態(tài)代理的原理和操作