Maven父子工程創建、與普通工程區別

 

普通項目與 maven項目的區別:

如果有多個項目都是傳統的SSM框架整合的項目,那麼需要在每個項目中都放置一套 SSM 框架的 jar 包。

如果是 Maven管理的SSM工程,如果有多個項目,那麼只需要一套 SSM 框架的jar包,實際項目中只用放置 jar 包的座標即可。

 

Maven工程拆分:Maven解決代碼可重用和便於維護問題

Maven可以把一個完整的項目,分成不同的獨立模塊,這些模塊都有各自獨立的座標,哪個地方需要其中某個模塊,就直接引用該模塊座標即可(維護一份代碼即可)。如果公司開發一個新的項目,首先我們考慮的不是 dao 、service、utils、domain如何編寫,而是考慮 dao、service、utils、domain這些模塊是否已經存在,如果存在就直接引用。

Maven工程聚合:

我們可以把拆分零散的模塊聚合在一起編寫一個完整的項目,這就是maven聚合。


Maven父子工程創建

父工程創建:父工程的主要用途是 管理 jar 包的座標。

父工程只需要 pom.xml 文件,可以刪除 src 目錄

創建子工程(模塊):

創建 dao 子模塊,右鍵父工程,選擇 New  > Module

dao模塊不需要與頁面進行交互,即是普通 java 工程就可以,所以不需要使用骨架創建(不勾選 Create from archetype)

創建 service 子模塊,右鍵父工程,選擇 New  > Module

service 模塊不需要與頁面進行交互,即是普通 java 工程就可以,所以不需要使用骨架創建(不勾選 Create from archetype)

創建 web子模塊,右鍵父工程,選擇 New  > Module

web 模塊需要與頁面進行交互,所以需要使用骨架創建(勾選 Create from archetype),選擇 maven-archetype-webapp

到此 maven 父子工程創建完成,當然實際項目中會有許多細分的子模塊需要創建。


工程與模塊的區別、聯繫

區別

工程不等於完整的項目,模塊也不等於完整的項目。一個完整的項目看的是代碼,如果代碼完整就可以說這是一個完整的項目,和此項目是工程和模塊沒有關係。

工程天生只能使用自己內部的資源,工程天生是獨立的。後天可以和其他工程或模塊建立關聯關係。

模塊天生不是獨立的,模塊天生是屬於父工程的,模塊一旦創建,所有父工程的資源都可以使用。

聯繫

父子工程之間,子模塊天生繼承父工程,可以使用父工程所有資源。

子模塊之間天生是沒有任何關係的。

父子工程之間不用建立關係,繼承關係是先天的,不需要手動建立。

平級之間的引用叫做依賴,依賴不是先天的,依賴是需要後天建立的。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章