小小程序員
BlogJava
|
首頁
|
發新隨筆
|
發新文章
|
|
|
管理
最簡單的動態代理實例(spring基于接口代理的AOP原理)
JDK的動態代理是基于接口的
package
?com.open.aop;
public
?
interface
?BusinessInterface?
{
????
public
?
void
?processBusiness();
}
目標對象
package
?com.open.aop;
public
?
class
?BusinessObject?
implements
?BusinessInterface?
{
????
public
?
void
?processBusiness()?
{
????????System.out.println(
"
action
"
);
????}
}
代理對象
package
?com.open.aop;
import
?java.lang.reflect.InvocationHandler;
import
?java.lang.reflect.Method;
import
?java.lang.reflect.Proxy;
public
?
class
?LogHandler?
implements
?InvocationHandler?
{
????
private
?Object?delegate;
????
public
?Object?binder(Object?delegate)?
{
????????
this
.delegate
=
delegate;
????????
return
?Proxy.newProxyInstance(delegate.getClass().getClassLoader(),
????????????????delegate.getClass().getInterfaces(),
this
);
????}
????
public
?Object?invoke(Object?proxy,?Method?method,?Object[]?args)
????????????
throws
?Throwable?
{
????????Object?obj?
=
?
null
;
????????System.out.println(
"
對象方法調用前
"
);
????????
try
?
{
????????????obj?
=
?method.invoke(delegate,?args);
????????}
?
catch
?(Exception?e)?
{
????????}
????????System.out.println(
"
對象方法調用后
"
);?
????????
return
?obj;
????}
}
測試類
package
?com.open.aop;
import
?java.lang.reflect.InvocationHandler;
import
?java.lang.reflect.Proxy;
public
?
class
?Test?
{
????
public
?
static
?
void
?main(String[]?args)?
{
????????BusinessInterface?bi?
=
?(BusinessInterface)?
new
?LogHandler()
????????????????.binder(
new
?BusinessObject());
????????bi.processBusiness();
????}
}
輸出結果
對象方法調用前
action
對象方法調用后
發表于 2006-06-09 10:20
~小Q
閱讀(1646)
評論(1)
編輯
收藏
所屬分類:
『
Spring
』
評論
#
re: 最簡單的動態代理實例(spring基于接口代理的AOP原理)
挺不錯 簡單易懂
凝固
評論于 2007-10-05 10:49
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
圖解spring mvc
Quartz的cron表達式
在spring利用javamail,quartz定時發送郵件
spring對java遠程調用的簡化(三)之HTTPinvoker
spring對java遠程調用的簡化(二)之Hessian,Burlap
spring對java遠程調用的簡化(一)之RMI
spring中事務的屬性
事務的特點以及spring提供事務管理器的簡介
ProxyFactoryBean屬性介紹
spring中基礎核心接口介紹
<
2006年6月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
公告
spring-誰與爭鋒
常用鏈接
我的隨筆
我的文章
我的評論
我的參與
最新評論
留言簿
(4)
給我留言
查看公開留言
查看私人留言
隨筆分類
『
eclipse
』(2)
(rss)
『
Flash
』(1)
(rss)
『
JavaScript
』(1)
(rss)
『
Maven
』(1)
(rss)
『
Spring
』(17)
(rss)
『
springside
』(1)
(rss)
『
匯編
』(4)
(rss)
『
計劃
』(1)
(rss)
相冊
spring
Blog
論壇
積分與排名
積分 - 62783
排名 - 842
最新評論
1.?re: 在spring利用javamail,quartz定時發送郵件[未登錄]
感覺不錯嗎、
--xiaoxiao
2.?re: JavaScript中的arguments,callee,caller,call,appy
不錯啊
--artwl
3.?re: JavaScript中的arguments,callee,caller,call,appy[未登錄]
注意,arguments[0] 是對的。arguments是一個Object。
--你好
4.?re: JavaScript中的arguments,callee,caller,call,appy
評論內容較長,點擊標題查看
--zhangsir199
5.?re: Maven的eclipse插件使用的flash教程[未登錄]
除了插件是真的之外,其他怎么全是假的?
--王子
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 ~小Q
主站蜘蛛池模板:
日韩中文无码有码免费视频
|
美女视频黄免费亚洲
|
欧洲人免费视频网站在线
|
亚洲乱码中文字幕手机在线
|
国产亚洲精品美女久久久久
|
日韩高清在线高清免费
|
亚洲av无一区二区三区
|
国产成人精品123区免费视频
|
亚洲国产av玩弄放荡人妇
|
91av免费在线视频
|
精品国产人成亚洲区
|
亚洲天堂免费在线视频
|
亚洲精品成人片在线观看精品字幕
|
国产成人高清精品免费观看
|
亚洲色欲久久久综合网东京热
|
a在线视频免费观看在线视频三区
|
国产亚洲精品精华液
|
91久久青青草原线免费
|
2020久久精品亚洲热综合一本
|
午夜免费福利在线观看
|
羞羞网站在线免费观看
|
国产精品V亚洲精品V日韩精品
|
青青操在线免费观看
|
亚洲国产成人精品无码区在线秒播
|
最近中文字幕mv免费高清视频7
|
成人性做爰aaa片免费看
|
日产亚洲一区二区三区
|
国国内清清草原免费视频99
|
亚洲精品无码高潮喷水A片软
|
无码欧精品亚洲日韩一区夜夜嗨
|
国产一级一毛免费黄片
|
亚洲嫩草影院在线观看
|
免费毛片在线视频
|
久久最新免费视频
|
亚洲国产成+人+综合
|
亚洲高清无码综合性爱视频
|
久久aⅴ免费观看
|
国产亚洲欧美日韩亚洲中文色
|
亚洲一区二区三区在线观看精品中文
|
美女内射无套日韩免费播放
|
久久人午夜亚洲精品无码区
|