美文网首页
Springboot使用Maven构建多模块项目

Springboot使用Maven构建多模块项目

作者: linjiajiam | 来源:发表于2017-10-28 14:21 被阅读0次

    在以往javaweb开发的项目中,会为项目分层开发,一般我们会在一个功能中新建不同的package,然后把不同的类放在不同的package中,比如有dao、service、controller、web、util等等。如下图:

    image.png

    但是这种项目往往会有弊端,比如一个web项目肯定会有一个后台管理(此处我称为:offline)。而前台(此处我称为:online)与offline肯定会有很多dao与service以及util是公用的。并且我们online打包war的时候,并不想把offline代码也打包进去。并且项目越来越大,pom的管理也会变得复杂。所以就需要分层。建立一个如下图的项目结构:

    1、建立一个Maven的parent项目

    image.png image.png image.png

    删除掉parent项目的src文件夹

    image.png

    最后生成的父项目如下图:

    image.png

    2、配置parent项目pom文件,一些公共的依赖可以放在这个项目里面。

       <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.1.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
            <java.version>1.8</java.version>
        </properties>
        
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <!-- 移除内嵌的tomcat运行容器 -->
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-tomcat</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
    
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
                <scope>${scope.jar}</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-configuration-processor</artifactId>
                <optional>true</optional>
            </dependency>
        
        </dependencies>
    

    3、新建module子项目,比如为online项目新建一个web、一个service、一个model、一个dao

    image.png

    新建web项目,点击next

    image.png image.png

    点击finish后,生成如下图结构:

    image.png

    依照web层,接下来生成service层、dao层、model层

    image.png

    相关文章

      网友评论

          本文标题:Springboot使用Maven构建多模块项目

          本文链接:https://www.haomeiwen.com/subject/wjhksxtx.html