Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)

1. 这是什么?

(1)多模块(module)springboot项目。

(2)项目整体结构包含一个父模块(boot_multi_module)和四个子模块(boot_model、boot_controller、boot_service、boot_mapper),boot_model为其他三个子模块的公共模块,四个子模块都依赖父模块,版本控制由父模块统一管理。

(3)boot_mapper依赖boot_model;

         boot_service依赖boot_mapper、间接依赖boot_model;

         boot_controller依赖boot_service、间接依赖boot_mapper和boot_model;

2. 如何搭建?

  2.1 先搭建父模块

   (1) 首先创建一个Spring Initializr工程

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第1张图片

(2)点击next,然后输入Group和Artifact

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第2张图片

(3)点击next(什么都不选)

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第3张图片

(4)修改路径或者使用默认路径,然后点击next,

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第4张图片

(5)点击finish

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第5张图片

(6)删除.mvn文件夹、src文件夹、.gitignore文件、HELP.md文件、mvnw文件、mvnw.cmd文件。删除后的效果如下图

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第6张图片

(7)修改当前pom文件,在version下面增加 pom,如下图。至此父模块搭建完毕。

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第7张图片

   2.2 创建boot_module子模块

(1)工程名右键 -> new -> Module

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第8张图片

(2)创建一个Spring Initializr工程,点击next

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第9张图片

(3) 更改Group和Artifact,然后点击next

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第10张图片

(4)选择需要的依赖,然后点击next

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第11张图片

(5)选择项目路径,点击finish

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第12张图片

(6)此时的项目结构如下

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第13张图片

(7)将boot_multi_module和boot_model建立联系,声明boot_multi_module为boot_model的父项目。将boot_model的pom文件里的parent里的groupId、artifactId、version的值更改为boot_multi_module的pom文件中对应的值,其实也就是创建父工程中第二步里对应的值。

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第14张图片

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第15张图片

(8)然后在父工程(boot_multi_module)的pom里添加boot_model模块。如下图

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第16张图片

(9)同样方法新建其他子模块(boot_controller、boot_service、boot_mapper),最终的结构如下图。父模块的pom添加子模块的module,各子模块的pom里的parent都引用父模块的groupId、artifactId、version

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第17张图片

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第18张图片

(10)建立各子模块间的关系。boot_mapper中添加boot_model的依赖;boot_service中添加boot_mapper的依赖;boot_controller添加boot_service的依赖。结构如下图

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第19张图片

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第20张图片

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第21张图片

(11)收尾,整理项目总体结构。

        一、由于项目主入口为boot_controller的BootControllerApplication,所以只保留boot_controller的BootControllerApplication,删除boot_service中的BootServiceApplication、boot_mapper中的BootMapperApplication、boot_model中的BootModelApplication.删除后如下图

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第22张图片

    二、至于各模块的resource文件夹,一般service和model不需要写配置,所以可以删掉boot_service和boot_model中的resource文件夹;如果用mybatis,需要保留boot_mapper中的resource文件夹,否则也删掉;boot_controller要保留resource文件夹,因为要写application。至此,多模块springboot项目搭建完毕。

3. 测试

(1)编写model

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第23张图片

(2)编写service

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第24张图片

(3)编写controller

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第25张图片

(4)修改BootControllerApplication,更改包扫描路径

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第26张图片

(5)启动成功,端口为11111

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第27张图片

Spring框架学习--springboot 多模块项目搭建(idea+maven+springboot)_第28张图片

4. 完整代码:https://github.com/bnuzwhy/boot_multi_module

你可能感兴趣的:(java,Java,框架)