通過以下例子來解釋:
首先寫乙個介面並實現這個介面
//隨便建乙個介面,這裡就寫乙個userservice
public
inte***ce
userservice
//然後實現userservice介面,並隨意寫一些方法用來測試
public
class
userserviceimpl
implements
userservice
@extanno
public
void
addlog()
throws interruptedexception
}
自定義乙個註解,沒有什麼意義,就是很隨意的
@target()
@retention
(retentionpolicy.runtime)
@documented
@inherited
public @inte***ce
extanno
寫乙個類實現invocationhandler介面,實現其中的方法,用來實現註解中需要的業務邏輯
public
class
testinvocationhandler
implements
invocationhandler
@override
public object invoke
(object proxy, method method, object[
] args)
throws throwable
newthread
(new
runnable()
catch
(exception e)}}
);return null;
}/**
* 生成**物件方法
** @param */
public
t getproxy()
}
寫乙個類測試一下自定義的註解是否成功
public
class
test
}
輸出結果:
1、開始新增使用者
2、結束新增使用者
記錄日誌
簡單設計模式實現業務邏輯與流程邏輯的分離
在企業應用系統開發中,特別是涉及到多部門協同作業的情況,業務流程是最難確定下來的,應用系統開發過程中和應用系統上線後流程經常會發生變化。如何採用有效,合理成本的方式來處理這種現象呢?如果做到在應用系統開發中業務邏輯與流程邏輯分離,即可達到業務流程不確定的情況下的不影響開發進度,同時有可以提公升應用系...
簡單設計模式實現業務邏輯與流程邏輯的分離
在企業應用系統開發中,特別是涉及到多部門協同作業的情況,業務流程是最難確定下來的,應用系統開發過程中和應用系統上線後流程經常會發生變化。如何採用有效,合理成本的方式來處理這種現象呢?如果做到在應用系統開發中業務邏輯與流程邏輯分離,即可達到業務流程不確定的情況下的不影響開發進度,同時有可以提公升應用系...
裸版json是fastJson的底層實現原理
把資料庫的資料變成json以後儲存在伺服器實體地址,讓客戶來訪問 file.createnewfile 用乙個stringbuffer來儲存著每次轉換完成的string stringbuffer sb new stringbuffer int i 0 int size lt.size for use...