多工程:基於Maven的SSM(Spring,SpringMvc,Mybatis)整合的web工程(中),mavenspringmvc
上篇用了單工程建立了SSM整合的web工程(http://www.cnblogs.com/yuanjava/p/6748956.html),這次我們把上篇的單工程改造成為多模組工程
一:建立對應的多工程
首先原工程有對應的包如下
因為原單工程是 contoller 調用 service ,service 調用 mapper ,mapper 調用pojo
因此把對應的 service mapper pojo 分別拆分出去當做模組 然後把utils公用的抽出去當做common模組
最後建立出來的工程關係如下:
lxs-parent (父工程 pom)
----------lxs-common (子工程 jar 對應原工程裡的utils)
--------- lxs-web-parent (子工程 彙總工程 pom)
----------lxs-pojo (子模組 jar 對應原工程 pojo包)
----------lxs-mapper (子模組 jar 對應原工程 dao包)
----------lxs-service (子模組 jar 對應原工程 service 介面和實作類別)
----------lxs-web (子模組 war )
還有另一種建立方式 把lxs-common,lxs-pojo,lxs-mapper,lxs-service lxs-web直接彙總到lxs-parent父工程裡。
1.建立項目父工程 lxs-parent
2.建立common工程lxs-common jar供其他工程使用,繼承父工程
3.建立web 工程的父工程 lxs_web_parent,繼承父工程
在lxs_web_parent建立彙總工程 點lxs_web_parent 右鍵建立個
Pojo模組 專門用於存放 pojo 類
同理建立mapper 模組 和 service模組
最後建立 web工程
把lxs-web變成 web工程
至此,所有工程建立完成,結構如下
二:匯入對應的jar包和對應的依賴包
把原工程裡的pom.xml 裡的依賴拷貝到父工程 lxs-parent裡
然後理清對應的依賴關係
lxs-parent (父工程 pom)
----------lxs-common
--------- lxs-web-parent (依賴lxs-common)
----------lxs-pojo (不依賴任何)
----------lxs-mapper (依賴lxs-pojo)
----------lxs-service (依賴lxs-pojo和lxs-mapper )
----------lxs-web (依賴lxs-service )
lxs-common修改 pom.xml ,為了過濾包,暫時先把 lxs-parent 的內容移過去,以後直接慢慢去除不需要的。
去除版本號碼
lxs-web-parent 依賴lxs-common
lxs-pojo不依賴其他 ,Pom.xml 不修改
lxs-mapper模組 依賴lxs-pojo
lxs-Service 依賴lxs-pojo和 lxs-mapper
lxs-Web 依賴lxs-service
依賴傳遞完成
三:把原工程對應的模組和代碼移動到多模組工程裡
1. SSM 工程裡webapp等內容全拷貝到 lxs-web工程裡
把resources裡的內容也拷貝過去
2. 然後開始把原SSM 裡的各個包裡的內容分別拷到各自的模組中
a. Bean 包對應 pojo
拷貝到
b.Controller包拷貝到lxs-web裡
到
c. Dao包對應mapper模組 拷貝到此模組
到
d.Service 介面和實作類別拷貝到 service模組
到
至此,所有步驟完成。
接下來驗證結果,啟動tomcat
多工程建立成功。
下篇: 可以把 service jar 單獨拿出來當做一個war 當做服務提供者,然後用前端contoller當做消費者調用,下篇接著改造