[maven 4] 建立 struts2+Spring+Mybatis web專案
- 環境介紹
- struts2 2.3.28.1
- Spring 3.2.17
- Mybatis 3.2.3
- 照著之前的做法 maven archetype 建一個SpringApp (已改為 SSHBaseApp , 這邊名稱用SSH為錯誤的 , 因為並非使用Hibernate , 本篇使用MyBatis ) ,
如下圖
- 過去不管是spring 還是 hibernate這類framework , 我們都須手動下載 jar檔 , 還需要下載相依的 jar 檔 , 譬如 log 的 jar 檔 , 否則無法deploy , 近來發展逐漸有 ant maven gradle這類工具幫助我們處理這些套件相依性的問題 , 實為方便
- 灣岸建置好後先至 spring的官網 點選 quick start
- 本次建立使用 3.2.17版 , 右上方可看到官方堤共 maven 與 gradle的來源 , 將下方複製貼至SpringApp的pom.xml裡
- 貼入pom.xml稍等1分鐘後即完成 , spring 還有一個很重要的 application.xml , 不過在待之後的章節才會有較詳細的介紹
- 以上完成後 , 等於是已經匯入所需的jar檔 , 再來就開始分別進行config設定
- struts.xml設定檔 , maven有其目錄結構 , resource資料夾是放一些設定檔的位置 , 如果沒有此資料夾 , 自己手動新增即可 , struts.xml 預設是放在 src 目錄底下 , 當web.xml 讀取到需要匯入struts設定時 , 便會去src 目錄找 struts.xml , 但因maven 規範已有個resources 目錄 , 將 struts.xml檔放至該目錄下 , 當jboss 啟動時是找的到 struts,xml的
- 在struts.xml 設定url request時該如何處理
- 啟動jboss , 在網址輸入index , 測試是否成功
- spring的設定檔預設位置如下
- standalone
- web
- 預設檔名 : application.xml
- 預設目錄 : WEB-INF
- 因為在之前的pom.xml 導入的spring設定不足 , 現在實作的是web , 因此還需要加入一條設定如下 , 並且加了一個參數方便管理
- 加完pom.xml , 需要在專案上右鍵 maven->update project , 如果發生以下錯誤 可以參考此連結 , 到local repository找到該套件, 將*.lastUpdated 檔刪除 , 這樣重新update project , 就可以順利下載該套件 jar 檔
- The container 'Maven Dependencies' references non existing library '${groupid}/${artifactid}-${version}.jar'
- 增加applicationContext.xml 放置於resources目錄, 此為spring的設定檔
- 接著告訴web.xml 有spring , 前面提到 spring的預設位置 , 但因為maven 我們放在resources 目錄 , 所以需要加上<context-param>.......</context-param>這段
- 啟動jboss查看console , spring是否成功
- MyBatis屬於ORM(Object relation mapping)的一種 , Hibernate也同屬之 , 精神就是
- 1個類別(即)對一個table , 一個物件對一筆資料
- MyBatis的設定檔為 mybatis-config.xml , 裡面主要包含三類
- 資料庫連線 (本篇由spring處理)
- 需匯入的xml mapping檔 (即vo與table之對應關係)
- 其他設定
- 在resources加入mybatis-config.xml檔案 , 不做任何設定
- generatorConfig.xml 協助產生所需的類別 , 之後再介紹
- 以上三個framework設置完畢後 , 至local端的repository資料夾下會發現maven 幫我們把所有需要的 jar 都下載好了!!!
沒有留言:
張貼留言