Spring Boot 2多模块 Spring Boot 项目--之多模块重构

前言

通常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

    
    pom
Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第1张图片
image.png

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第2张图片
new/modue
Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第3张图片
ArtifactId设置为web
Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第4张图片
image.png

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第5张图片
拖动原主项目的代码到子项目的java

并选择所有


Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第6张图片
选择所有

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第7张图片
image.png

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第8张图片
删除主项目的src目录

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第9张图片
重新运行正常ok

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

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第10张图片
把repository下的代码拖动到子module的对应目录

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


Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第11张图片
image.png

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第12张图片
还没设置依赖的情况

--

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


Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第13张图片
image.png

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第14张图片
依赖的参数
    
    
        
            com.younghare
            model
            0.0.1-SNAPSHOT
        

    

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

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第15张图片
添加对persistence的依赖
    

        
        
        
        
            com.younghare
            persistence
            0.0.1-SNAPSHOT
        
    

第11步:构建项目


Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第16张图片
构建

第12步:运行

Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第17张图片
运行

第13步:测试


Spring Boot 2多模块 Spring Boot 项目--之多模块重构_第18张图片
测试重构后的代码

你可能感兴趣的:(Spring Boot 2多模块 Spring Boot 项目--之多模块重构)