intelj idea 建立聚合項目(典型web項目,包括子項目util、dao、service)

需求:第三方提供了http api接口,咱們須要將其數據所有取回來,存放到本地Mysql數據庫。java

開發工具是intelj idea,準備基於maven建立聚合項目,util做爲工具包,單獨做爲一個工程,打包時打成jar包;web

dao層依賴util,打包時也打成jar包;sql

service依賴dao層,打包時也是打成jar包;數據庫

controller層依賴service層,打包時打成war包。api

 

1.新建root工程瀏覽器

File--New Project--tomcat

 

 2.新建子moduleapp

在下圖中,對着步驟一新建的root工程右擊,新建modulemaven

 

 

 

 3.分別查看root工程和子工程的pom文件ide

 

 四、新建dao 子工程,依賴common-utils

 

在pom文件中,手動添加依賴:

 

 

 五、新建service 子工程,依賴dao子工程

操做同第四步。

一樣,咱們要修改service的pom文件,手動加dao子工程的依賴進來。

 

 六、新建controller工程,該工程應該爲web工程,依賴service層

 

完成後在pom文件中增長對service的依賴。

 

七、測試工程是否正常

設想:由於clicent是web工程,pom文件中依賴service組件;因而---將service.jar拷貝到web/lib目錄下

在本地maven找到service組件後,根據service的pom文件,發現其依賴dao組件;因而將dao.jar拷貝到web/lib目錄下

在本地找到dao組件後,在其pom中,發現dao組件依賴common-utils組件;因而找到common-utils組件後,將common-utils.jar拷貝到lib目錄下

在common-utils中新增一個工具方法,經過dao/service/controller層層調用,因此能夠直接請求controller層,調用到utils的方法。

 

 

在client的web中新增一個servlet:

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  <servlet>
    <servlet-name>Simple</servlet-name>
    <servlet-class>com.newthreeboard.SimpleServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Simple</servlet-name>
    <url-pattern>/simple-servlet</url-pattern>
  </servlet-mapping>
</web-app>

 

 依次點擊clean、compile、package後,會獲得一個war包

查看打成的解壓的war包目錄,其lib目錄下:

 

這邊先直接拷貝到tomcat的web-apps下執行,看看效果:

啓動tomcat後,

 

 在瀏覽器中進行調用:

http://localhost:8080/newthreeboard-client/simple-servlet

此時頁面請求後一片空白,沒有任何反應,由於咱們沒有輸出東西,可是在tomcat的界面能夠看到:

 

 至此,簡單的聚合項目構建ok。

相關文章
相關標籤/搜索