總結一下這個項目
利用hibernate+struts2 框架完成后臺項目
準備環境:
? ? Struts2.5 + hibernate4.2.4 + MySQL6.0
?功能:
1? ? 登錄注冊
2? 信息的增刪改查
?做法:
1 . 準備jar包?
? ? ?hibernate-core包
? ? ?struts2-core包
? ? ?mysql驅動包?
? ? ?junit單元測試包
2 創建動態web項目?
3 導包?
? ? 通過Window 屬性下的java path添加相關包
? ? new 包后 add libraries 將包添加
? ? 在WEB-INF目錄下的lib中也導入相應的包
4.配置相關的xml文件
? ?web.xml文件? ?配置過濾器
? ?strusts.xml文件 package為默認 (再添加<global-allowed-methods>regex:.*</global-allowed-methods>)
? ?hibernate.xml文件 配置property屬性
5. 創建實體類User和Students
? ? User(uid, username, password)
? ? Students(sid,sname,gender,birthday,address)
? ? 將屬性封裝,保留不帶參數的構造方法,生成一個帶參數的構造方法
? ? 注意,實體類Students中需要重寫toString方法?
6.將實體類的屬性映射到數據庫中
? ?在實體類的包下新建對應的hbm.xml文件
? ?再配置hbm.xml的屬性?
? ?hibernate.cfg.xml中的mapping需要指定到兩個實體類的xml中
7.用戶登錄模塊
? 創建MyHibernateSessionFactory
? ? ?私有的構造方法,保證單例模式
? ? ?公有的靜態方法來獲得工廠對象
? 設計用戶接口和實現類
? ? ? 用戶接口:用戶登錄方法,用戶注銷方法? ? ??
? ? ? 用戶實現類:重寫接口中的方法(try-catch-finally)? ? ? ?
? ? ? 用@test 來測試用戶的功能(junit)
? 設計Action父類
? ? ? 繼承ActionSupport 并且實現接口ServletRequestAware, ServletResponseAware, ServletContextAware
? ? ? 可以用web的內置對象
? ? ??
? 設計用戶的Action類(繼承Action父類)
? ? ? ?在接受表單模型數據采用模型驅動接受表單數據(可以不用get,set封裝)
? ? ? ?注冊Struts2.xml
? 頁面的調用
? ? ? ?進去對應的jsp頁面
? ? ? ?表單的提交的action用絕對路徑
? ? ? ?action="<%=path%>/users/Users_login.action"這要和功能的名字相同(UserAction下的login方法)
? ? ? ?用戶登錄驗證用validate方法 但是會對所有的action都驗證 可以通過在方法前加@SkiValidation來避免驗證
8.學生管理模塊
??
? ? ? ?設計學生業務邏輯接口(查詢所有學生資料,按id查詢,添加學生資料,刪除學生資料,修改學生資料)
? ?顯示學生資料
? ? ? ? 添加測試數據-->@test
? ? ? ? 設計學生業務邏輯接口(上面)
? ? ? ? 設計學生接口實現類(接口方法)(try - catch - finally)
? ? ? ? 設計學生Action動作(顯示學生資料)
? ? ? ? 注冊Struts2.xml
? ? ? ? 頁面調用
? ?刪除學生資料
? ? ? ? 設計學生業務邏輯接口(上面)
? ? ? ? 設計學生接口實現類(接口方法)(try - catch - finally)
? ? ? ? 設計學生Action動作(刪除學生資料)
? ? ? ? 注冊Struts2.xml
? ? ? ? 頁面調用
? ?學生主鍵的生成策略
? ? ? ? 設計學生實現類(生成主鍵策略)
? ? ? ? 找到數據庫最大的id 通過String轉int 給id遞增
? ? ? ? 再將int轉為String
? ? ? ? 設計Action動作
? ? ? ??
? ?添加學生資料
? ? ? ? 添加測試數據-->@test
? ? ? ? 設計學生業務邏輯接口(上面)
? ? ? ? 設計學生接口實現類(接口方法)(try - catch - finally)
? ? ? ? 設計學生Action動作(顯示學生資料)
? ? ? ? 注冊Struts2.xml
? ? ? ? 頁面調用
? ?修改學生資料
? ? ? ? 設計學生業務邏輯接口(上面)
? ? ? ? 設計學生接口實現類(接口方法)(try - catch - finally)
? ? ? ? 設計學生Action動作(顯示學生資料)
? ? ? ? 注冊Struts2.xml
? ? ? ? 頁面調用
最后大家一起加油???
項目地址:https://github.com/Eyym/Grace.git