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

需求:第三方提供了http api接口,我们需要将其数据全部取回来,存放到本地Mysql数据库。

开发工具是intelj idea,准备基于maven创建聚合项目,util作为工具包,单独作为一个工程,打包时打成jar包;

dao层依赖util,打包时也打成jar包;

service依赖dao层,打包时也是打成jar包;

controller层依赖service层,打包时打成war包。

 

1.新建root工程

File--New Project--

 

 2.新建子module

在下图中,对着步骤一新建的root工程右击,新建module

 

 

 

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

 

 4、新建dao 子工程,依赖common-utils

 

在pom文件中,手动添加依赖:

 

 

 5、新建service 子工程,依赖dao子工程

操作同第四步。

同样,我们要修改service的pom文件,手动加dao子工程的依赖进来。

 

 6、新建controller工程,该工程应该为web工程,依赖service层

 

完成后在pom文件中增加对service的依赖。

 

7、测试工程是否正常

设想:因为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。

 

posted @ 2017-03-23 17:34  三国梦回  阅读(15286)  评论(1编辑  收藏  举报