详解Maven 搭建spring boot多模块项目(附源码)
发布时间 - 2026-01-11 03:08:21 点击率:次本文介绍了Maven 搭建spring boot多模块项目,分享给大家,具体如下:

备注:所有项目都在idea中创建
1.idea创建maven项目
- 1-1: 删除src,target目录,只保留pom.xml
- 1-2: 根目录pom.xml可被子模块继承,因此项目只是demo,未考虑太多性能问题,所以将诸多依赖。都写在根级`pom.xml`,子模块只需继承就可以使用。
- 1-3: 根级pom.xml文件在附录1
- 1-4: 依赖模块 mybatis spring-boot相关模块
2.创建子模块(module)
- 2-1: file > new > module 输入 model
- 2-2: file > new > module 输入 dao
- 2-3: file > new > module 输入 service
- 2-4: file > new > module 输入 webapi
3.修改子模块pom.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>parent</artifactId>
<groupId>com.luyh.projectv1</groupId>
<version>1.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>projectv1-model</artifactId>
</project>
注意:<font color="red"><relativePath>../pom.xml</relativePath></font>此段必须加上,用来继承父模块
至此,项目的基础结构搭建完毕了,接下来可以来撸代码了,哦哦稍等,我先介绍下各个子module的工作职责吧
4.子模块在项目中担任的'工作职责'
- model 此模块存放着所有的实体类
- dao 此模块存放着数据交互的具体实现,供service调用
- service 此模块存放业务代码实现,供API层调用
- webapi 此模块也可以不出现在项目中,为了写demo故将webapi层放进来
5.model层实体类编写
- 建立包名 com.luyh.projectv1.model
- 建实体类 Member.java 具体代码请clone我的git,git地址在最下方
6.dao层数据库操作层
- 建立com.luyh.projectv1.dao.config,该包内只有2个让spring boot自动加载配置的配置java类
- 建立MemberMapper.java 具体内容看代码
- 在resources/mybatis 下建立MemberMapper.xml
- 建立IMember.java
- 建立Member.java 实现Imember接口
- 建立resources/application.properties文件用于配置数据库连接
7. service 编写业务逻辑
- 建立 com.luyh.projectv1.service 包
- 建立IMemberService.java接口
- 建立MemberService.java实现类
- MemberService.java 类中自动注入DaoMember 并调用其方法获取数据
8. webapi 编写webapi获取json数据
- 建立Application.java 启动应用
- 建立 com.luyh.projectv1.webapi.controller.MemberController.java 写个rest风格Controller
- 启动
9.sql文件 请自行导入mysql数据 sql文件
这里是项目地址,点击下载
附录1
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.luyh.projectv1</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.3.RELEASE</version>
</parent>
<modules>
<module>model</module>
<module>dao</module>
<module>service</module>
<module>webapi</module>
</modules>
<!--申明依赖关系-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
<!--设置maven仓库-->
<repositories>
<repository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</pluginRepository>
</pluginRepositories>
</project>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# springboot
# maven模块
# springboot多模块项目
# spring
# boot
# 多模块
# IDEA创建SpringBoot的maven项目的方法步骤
# Maven搭建springboot项目的方法步骤
# springboot+maven快速构建项目的示例代码
# Maven项目改为spring boot项目的方法图解
# SpringBoot创建maven多模块项目实战代码
# 如何用Maven开发Spring Boot项目详解
# 放着
# 工作职责
# 实体类
# 太多
# 都在
# 不出
# 只需
# 给大家
# 我先
# 点击下载
# 写在
# 具体内容
# 大家多多
# 就可以
# 类中
# 稍等
# 哦哦
# 多模
# 自动加载
# 请自行
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何基于PHP生成高效IDC网络公司建站源码?
浅谈redis在项目中的应用
C语言设计一个闪闪的圣诞树
Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
Laravel怎么连接多个数据库_Laravel多数据库连接配置
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
油猴 教程,油猴搜脚本为什么会网页无法显示?
中山网站推广排名,中山信息港登录入口?
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
如何在云服务器上快速搭建个人网站?
如何用已有域名快速搭建网站?
Laravel怎么发送邮件_Laravel Mail类SMTP配置教程
微信小程序制作网站有哪些,微信小程序需要做网站吗?
EditPlus中的正则表达式 实战(2)
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
phpredis提高消息队列的实时性方法(推荐)
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
如何用AI帮你把自己的生活经历写成一个有趣的故事?
googleplay官方入口在哪里_Google Play官方商店快速入口指南
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
如何在万网主机上快速搭建网站?
Linux系统命令中tree命令详解
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
如何用搬瓦工VPS快速搭建个人网站?
QQ浏览器网页版登录入口 个人中心在线进入
Laravel中的Facade(门面)到底是什么原理
JS弹性运动实现方法分析
微信小程序 HTTPS报错整理常见问题及解决方案
如何在VPS电脑上快速搭建网站?
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
Bootstrap CSS布局之列表
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
如何自定义建站之星网站的导航菜单样式?
如何自定义建站之星模板颜色并下载新样式?
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程
IOS倒计时设置UIButton标题title的抖动问题
如何用腾讯建站主机快速创建免费网站?
如何用景安虚拟主机手机版绑定域名建站?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
Python文件流缓冲机制_IO性能解析【教程】
Python正则表达式进阶教程_复杂匹配与分组替换解析
JavaScript如何操作视频_媒体API怎么控制播放
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
Python图片处理进阶教程_Pillow滤镜与图像增强
上一篇:海外服务器如何一键部署全球网站?
上一篇:海外服务器如何一键部署全球网站?

