在用ssh開發web應用時,需要對生成的各個類檔案進行組織,下面就對乙個可行的目錄方案進行介紹:
譬如應用中有乙個使用者管理模組,則在公共包下建立乙個user包,如該公共包可以為com.simon.oa,
在user包下包括如下子包
1、controler包
該包放置各種struts的action。
2、dao包
該包放置各類dao(data access object),也就是放置對資料庫訪問的實現類,在用myeclipse中的「hibernate reverse engineering」進行反向操作時在某乙個目錄中就會生成對應某個表的dao,生成後可將該dao拖到dao包中。在某些應用中將dao作為介面,在該介面中包括所有對資料庫的操作方法,然後在dao包建立乙個hibernate包,在hibernate包中放置對dao介面的實現,譬如:userdao介面有乙個實現類為userdaoimpl,將該類放置到hibernate包中,實際的開發傾向於後一種方式,因為對這個dao介面可以實現spring的ioc操作。(不知道myeclipse對此是怎麼考慮的,這個問題讓我糾纏了很久,誤將dao理解成乙個能夠進行實際操作的類,而不是乙個介面,以後開發要注意)
3、model包
該包中放置hibernate反向工程生成的bean和該bean對應的.hbm.xml檔案。
4、service包
該包放置業務操作類,譬如使用者服務類,一般情況將該使用者操作類提取乙個介面,然後在service包下生成乙個impl包,在impl包中才放置使用者操作介面的實現類。該使用者介面實現類中呼叫dao介面對資料庫進行操作,而呼叫該實現類的方法在struts的action中。
5、vo包(value object)
vo包中的中包括struts中使用的pojo及actionform等資訊。
vo: value object
dto: data transfer object
個人理解vo和dto是類似的東西,原則上vo和dto只有public fields,主要用於程序之間資料傳遞的問題,vo和dto不會傳遞到表示層,在業務層就會被吸收。但看到很多人在建立vo和dto時,也含有setter,getter屬性和一些其它的輔助方法,這也無可厚非,我自己也不能確定這對不對。
實際的結構如下:
Extjs的目錄結構及開發時需要匯入的檔案
adapter 負責將裡面提供第三方底層庫 包括ext自帶的底層庫 對映為ext所支援的底層庫。build 壓縮後的ext全部原始碼 裡面分類存放 docs api幫助文件。exmaples 提供使用extjs技術做出的小例項。source 無壓縮ext全部的原始碼 裡面分類存放 遵從lesser ...
golang開發目錄結構
在實際的專案中發現大家的目錄結構都比較凌亂,基本每個人都有每個人的風格,乙個專案在不斷地變大,一些新的檔案或目錄又不斷地被新增進來,從這裡面去找到自己需要的資訊的成本越來越高,乙個統一的通用的目錄結構非常有必要。以下內容來自於github上的這個專案 不要把很多的 放到這個目錄下面,這裡面的 盡可能...
五條強化 SSH 安全的建議
當你檢視你的 ssh 服務日誌,可能你會發現充斥著一些不懷好意的嘗試性登入。這裡有 5 條常規建議 和一些個別特殊策略 可以讓你的 openssh 會話更加安全。強化密碼登入 密碼登入很方便,因為你可以從任何地方的任何機器上登入。但是它們在暴力攻擊面前也是脆弱的。嘗試以下策略來強化你的密碼登入。解決...