背景:
產品一期已經上線,二期必然有很多改動,其中有一處是在原有工作流中引入新的工作流,說白了就是在原先做好某個頁面上加入一塊新的內容,通常你會去修改你的原先的 service使得其多返回一塊資料,或者改變action的內容使其呼叫某個新的service(這樣做不好),如果改變頻繁,你會不斷的修改以前的東西,其實完全可以***來隔離關注點,這樣的話你的修改不會干擾的以前的內容,如果你的修改的東西下一期又不要了,也不要緊,在配製檔案中去掉這個***就行了
廢話說了一堆,進入實戰,看看方案一
step 1)寫listtopvideoscontributedintercept類
public class listtopvideoscontributedintercept implements interceptor
。。。。。
}step2)改變以前的action
加入以下內容:
private list topvideoscontributedlist;
/***
* @author weip
* @time 2006-6-8 9:56:08
* @return list
*/public list gettopvideoscontributedlist()
/***
* @author weip
* @time 2006-6-8 9:56:12
* @param topvideoscontributedlist list
*/public void settopvideoscontributedlist(list topvideoscontributedlist)
主要是加入乙個屬性,以便注入資料
3)修改配置檔案
/cn/tvuserinfo/tvuserinfo.ftl
/cn/tvuserinfo/tvuserinfo_error.ftl
加入紅色的那一行
這樣的話就直接通過***實現了資料的表現,不會干擾以前的內容,有很好的即插即用效果,但有一點不好
需要改變原有的action以實現注入,雖然是很小的表現改動,但還是不爽,如何能做到更加完美的外掛程式效果,看方案下集
用例的擴充套件與包含
擴充套件 extend 包含 include 擴充套件 extend extend關係是對基用例的擴充套件,基用例是乙個完整的用例,即使沒有子用例的參與,也可以完成乙個完整的功能。上面這段引用能看明白嗎?我反正是看不明白的 老師給舉了個例子,讓我恍然大悟。比如你想開叉到800公里外的目的地,但是油箱...
用Yar擴充套件實現RPC
rpc remote procedure call 遠端過程呼叫。是一種程序間通訊技術,允許程式像呼叫本地方法一樣呼叫遠端服務。rpc遮蔽了資料打包 網路通訊的細節,使得使用者只需要關注於服務呼叫,而服務呼叫又像呼叫本地方法一樣自然。php有個yar擴充套件,提供了rpc服務端和客戶端的功能。pec...
使用Lua的擴充套件庫LuaSocket用例
目錄結構 luasocket 是 lua 的網路模組庫,它可以很方便地提供 tcp udp dns ftp http smtp mime 等多種網路協議的訪問操作。它由兩部分組成 一部分是用 c 寫的核心,提供對 tcp 和 udp 傳輸層的訪問支援。另外一部分是用 lua 寫的,負責應用功能的網路...