美文网首页spring bootSpring
Spring Boot 2多模块 Spring Boot 项目-

Spring Boot 2多模块 Spring Boot 项目-

作者: 牵手生活 | 来源:发表于2019-03-11 22:43 被阅读140次

前言

通常java代码的由于不同的模块,将履行不同的职责,我们需要把不同的模块拆分成更小的单元,更小的单元去完成不同的使命。
我们需要对项目进行重构,比如项目既包括依赖管理,也包括业务代码

重构

  • 调整主工程类型packaging,把他构造成管理子模块,而不是管理代码;
  • 子模块再履行代码模块,创建子模块工程(module)
    • 模型层:model(用于管理模型对象)
    • 持久层:persistence(管理模型的存储与获取)
    • 表示层:web(可以是RESTful api接口,也可以是展示给用的web页面)
  • 调整子模块之间的依赖关系/子模块依赖管理(dependencyManagement)

特别说明:

  • 代码是以Spring Boot 第一个项目-helloWorld为基础
  • 把原来的项目重构为多个模块,单一的模块变成为3个模块:(企业中常用的分层或分模块的方式,主要是利用maven的模块化技术,无论是spring boot 或非spring boot都可以采用这个技术)
    • 模型层:model(用于管理模型对象)
    • 持久层:persistence(管理模型的存储与获取)
    • 表示层:web(可以是RESTful api接口,也可以是展示给用的web页面)

第一步:修改工程中的pom.xml

    <!--修改jar为pom
      模型层:model
      持久层:persistence
      表示层:web
      web依赖与persistence,persistence依赖于model
      web UserController->UserRepository -> User
    -->
    <packaging>pom</packaging>
image.png

第2步:创建子module 模块名为web (new/module)

new/modue ArtifactId设置为web image.png

第3步-拖动原主项目的代码到子项目的java

拖动原主项目的代码到子项目的java

并选择所有


选择所有

第4步把主项目的resource目录下的内容全部拖动到子module的resource目录

image.png

第5步:删除主项目的src目录

删除主项目的src目录

第6步:重新运行,并测试(应该正常--说明重构第一步正常)

重新运行正常ok

第7步:创建子module 模块名为persistence 和model ,这2个模块存在相互依赖
第8步:在persistence 中创建一个包名
把持久层repository构建到persistence module

在这个persistence 的module中创建com.younghare.springBoothelloworld.repository目录

把repository下的代码拖动到子module的对应目录

此时还没有处理相互依赖关系,idea也会提示你,我们先继续下去,后面我们再来设置依赖


image.png

此时User在persistence模块中会找不到,因为我们还没有设置依赖关系。

还没设置依赖的情况

--

第9步:创建新的module,模块名为model
在这个model 的module中创建com.younghare.springBoothelloworld.domain目录


image.png

第10步:在persistence模块的pom.xml文件中添加对model 模块的依赖(参数在model的pom.xml文件中)

依赖的参数
    <!--添加对model的依赖-->
    <dependencies>
        <dependency>
            <groupId>com.younghare</groupId>
            <artifactId>model</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

    </dependencies>

第10步:在web模块的pom.xml文件中添加对persistence 模块的依赖(参数在persistence的pom.xml文件中)

添加对persistence的依赖
    <dependencies>

        <!--web 依赖persistence-->
        <!--persistence依赖model-->
        <!-- 增加对persistence的依赖-->
        <dependency>
            <groupId>com.younghare</groupId>
            <artifactId>persistence</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>

第11步:构建项目


构建

第12步:运行

运行

第13步:测试


测试重构后的代码

相关文章

网友评论

    本文标题:Spring Boot 2多模块 Spring Boot 项目-

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