[原創(chuàng)]巧用System.getProperty()編譯現(xiàn)有工程的java文件
摘要: 本文所提供的方法解決了使用JAVA動態(tài)編譯現(xiàn)有工程中的源文件的簡便方法!利用javac編譯.java文件(因.java依賴包過多,如果手寫要累死了??!這里正好使用:System.getProperty("java.class.path")),動態(tài)生成依賴包!
閱讀全文
posted @
2012-07-24 23:44 零全零美 閱讀(1524) |
評論 (1) 編輯
【原創(chuàng)】運(yùn)用裝飾模式截取用戶輸入構(gòu)建通用驗證
摘要: 在系統(tǒng)開發(fā)中,與用戶交互的地方,例如表單輸入,瀏覽器URL傳參都是系統(tǒng)安全的敏感地帶。傳統(tǒng)的客戶端JavaScript驗證只能擋君子而不能攔小人,因為用戶一旦將JS禁用,我們就無能為力。于是人們說最安全的方式還是在服務(wù)器端驗證。但是這種最安全的方式卻是很麻煩的做法!因為我們無法只單單的在服務(wù)器端驗證,我們還需要做客戶端傳統(tǒng)驗證,這樣一來同一套驗證,客戶端一次,服務(wù)器端一次,暫且不考慮執(zhí)行的效率,單單是開發(fā)的效率就很讓人抓狂了!尤其是對URL傳參的驗證,難道我們對每一個URL傳遞參數(shù)的地方都必須寫一堆的驗證代碼嗎?
如果有這樣一種方法能夠通過一個過濾器能夠一次性的攔截獲取所有的用戶輸入,那么我們就可以只通過這個過濾器來做基礎(chǔ)的安全性驗證,例如我們可以過濾SQL語句,過濾非安全字符等等,而把業(yè)務(wù)規(guī)則驗證留給程序員去實現(xiàn),就將大大的加快開發(fā)效率,同時也可以構(gòu)建一個通用的用戶輸入驗證框架,減少與程序的緊耦合!
例如我們將所有用戶輸入中的"<"改為"<",將所有的">"改為">"
本文試圖尋找一種方法來解決這個問題!
閱讀全文
posted @
2009-11-24 12:15 零全零美 閱讀(1227) |
評論 (2) 編輯
裝飾Servlet Request對象
摘要: 裝飾模式是Erich Gamma等人所著的《設(shè)計模式:可利用面向?qū)ο筌浖幕A(chǔ)》一書中眾多模式之一。一般來說,此模式在設(shè)計Swing的程序員中比較流行,他們用它來改進(jìn)軟件。今天,即使有許多程序是基于Web應(yīng)用的,裝飾模式仍有用武之地,在J2EE的環(huán)境下也有使用的價值。
本文說明了如何將裝飾模式應(yīng)用到servlet request對象上。首先,提出了一個與servlet filter有關(guān)的問題,并解釋了隨之而引入的裝飾模式。然后,討論了如何在servlet環(huán)境下使用此模式,并列出了使用此模式的幾個比較有名的基于servlet的項目。最后,文章通過實現(xiàn)一個刪除空白符的filter例子,演示了裝飾模式在servlet中的使用。
閱讀全文
posted @
2009-11-24 11:21 零全零美 閱讀(632) |
評論 (0) 編輯