差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

Both sides previous revision 前次修改
下次修改
前次修改
java:guava:reflections:newproxy [2016/04/13 22:28]
tony [How to?]
java:guava:reflections:newproxy [2023/06/25 09:48] (目前版本)
行 4: 行 4:
 傳統方法要針對某一個類別中的方法做特殊處理(前處理或後處理),通常我們會將其覆寫或透過Proxy Pattern方式;現今甚至可以透過AOP方式,去達到我們的目的。Guava提供簡便的Dynamic Proxy,讓我們可以針對某"​介面"​所宣告的method做處理。 傳統方法要針對某一個類別中的方法做特殊處理(前處理或後處理),通常我們會將其覆寫或透過Proxy Pattern方式;現今甚至可以透過AOP方式,去達到我們的目的。Guava提供簡便的Dynamic Proxy,讓我們可以針對某"​介面"​所宣告的method做處理。
 ===== How to? ===== ===== How to? =====
 +我透過以下類別為範例做解說:​
 <code java> <code java>
 interface TestClassInterface { interface TestClassInterface {
行 21: 行 22:
 } }
 </​code>​ </​code>​
- +我想針對TestClass的test2方法做後製,將它的結果+1,以下為我的程式碼:​
- +
 <code java> <code java>
 @Test @Test
行 43: 行 42:
 } }
 </​code>​ </​code>​
 +從程式碼得知,要做後製的方法可以透過method.getName去處理;不需要的部分則按照原方法呼叫就可以了。\\ 
 +\\ 
 +Output: 
 +<​code>​ 
 +execute:  
 +proxy 
 +test1 
 +test2 
 +</​code>​
 ===== Resource ===== ===== Resource =====
   * [[http://​n3integration.com/​2015/​09/​23/​instrument-java-classes/​|Guava - Reflection.newProxy]]   * [[http://​n3integration.com/​2015/​09/​23/​instrument-java-classes/​|Guava - Reflection.newProxy]]