Maven + springboot + mybatis 构建多模块工程
废话不说先上最终效果:创建一个空项目,再创建一个父项目用来管理各模块并维护各模块关系,简要说明如下:
parent模块:主要用来管理以下各模块,和各模块涉及的jar包版本和boot项目入口级的的依赖管理,当然这部分也可以放在web模块中,只管理版本信息即可;
commons模块:主要存放一些常用的工具类,包含自定义的和第三方引用的;
config模块:主要存放和项目相关的第三方配置,比如Redis、async等;
web模块:主要存放接口入口,也就是controller层;
service模块:主要存放接口实现,用来处理业务逻辑;
dao模块:主要存放mapper文件和mapper.xml文件,用来处理数据库操作(CRUD);
domain模块:主要存放业务逻辑涉及的所有POJO类;
dto模块:主要存储前后端业务交互传参对象POJO类,避免因业务需求在domain中增加各种各样的属性。

开始搭建:
第一步:创建一个空项目,点击next输入自己的项目名和项目路径,点击finish,会弹出第二步的操作界面;

-----

第二步:创建管理项目即父模块,用来管理各子模块并维护父子关系,在第一步finish之后会弹出提示框,
点击“+”号选择 New Module,弹出提示框,
点击左侧选择 Maven,上方选择JDK版本,右侧勾选Create from archetype并选择下边的maven-archetype,不要选错了,
点击next,输入自己的项目信息,
点击next,选择自己的maven配置信息,
点击next,输入自己的模块信息尽量名称结构清晰可读性高,比如XXX-parent,点击finish,在点击ok;

------

-------

父模块创建完成如下图:

第三步:在父模块文件夹上边右击创建子模块,步骤和第二步差不多,
点击左侧选择 Maven,上方选择JDK版本,右侧勾选Create from archetype并选择下边的maven-archetype-quickstart,不要选错了,
点击next,选择右上角“...”选择第二步创建的父模块pom关系,
点击next,选择自己的maven配置信息,
点击next,输入自己的模块信息尽量名称结构清晰可读性高,比如XXX-domain,点击finish完成子模块创建,
在子模块中创建普通java项目目录结构,
点击左上角 File 选择 Project Structure 将子模块目录设置为 Source,
在文件夹下边创建domainPOJO类。

------

-------

子模块创建完成如下图所示:


第四步:参考第三步完成其余除web模块之外的其余模块的创建;
第五步:创建web模块:
在父模块文件夹上边右击创建子模块,步骤和第二步差不多,
点击左侧选择 Maven,上方选择JDK版本,右侧勾选Create from archetype并选择下边的maven-archetype-webapp,不要选错了,
根据提示一直next到finish,等待项目构建完成。
第六步:构建关系,比如说service模块依赖dao,dto,domain,commons模块,可参考如下图配置依赖:
其余的根据使用情况自己引用,自由发挥。

第七步:maven打包:
除web之外的子模块pom文件中配置如下:因为最后需要将web项目运行起来所以需要打包成可执行文件,
在右侧maven边栏,找到parent的maven结构,点击clean,再点击packge即可成功打包,
如果打包失败可先对各个模块进行clean并install,完成之后再次执行打包,
cmd dos窗口java -jar XXXX-web.jar,运行项目

-------

finally:构建完成后就是普通java工程师可以搞定的事情了~~~写接口,配置数据库....一些列高深的CRUD骚操作搞起来~~~

需要源码可以联系我....QQ:314921249
Maven + springboot + mybatis 构建多模块工程的更多相关文章
- Springboot & Mybatis 构建restful 服务
Springboot & Mybatis 构建restful 服务一 1 前置条件 jdk测试:java -version maven测试:命令行之行mvn -v eclipse及maven插 ...
- SpringCloud核心教程 | 第二篇: 使用Intellij中的maven来快速构建Spring Cloud工程
spring cloud简介 spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选.分布式会话等等.它运行环 ...
- Springboot & Mybatis 构建restful 服务二
Springboot & Mybatis 构建restful 服务二 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务一 2 restful ...
- Springboot & Mybatis 构建restful 服务五
Springboot & Mybatis 构建restful 服务五 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务四 2 restful ...
- Springboot & Mybatis 构建restful 服务四
Springboot & Mybatis 构建restful 服务四 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务三 2 restful ...
- Springboot & Mybatis 构建restful 服务三
Springboot & Mybatis 构建restful 服务三 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务二 2 restful ...
- SpringBoot+Gradle构建多模块项目
1 概述 Gradle由于构建速度比Maven快,且比Maven灵活,因此很多后端的应用都使用了Gradle进行构建,但一个问题是,Gradle的多模块项目比较难构建,再加上Gradle的更新非常快, ...
- Jenkins+Git+Maven构建并部署springboot(构建多模块中的单个模块)
主要思路:1.jenkins从git中拉取项目源码:jenkins使用maven构建并将生成的jar包通过shell脚本启动. 环境:环境:Centos7.Maven3.5.3.git(单机) 准备工 ...
- idea+maven+springboot+mybatis
确认maven环境,安装maven在这里就不赘述了. 在idea新建maven项目 下图中填上你Maven安装的目录 打开pom文件,导入jar包(手动敲入/拷贝) 下面是配置之后的pom文件内容 & ...
随机推荐
- 题解洛谷P1538【迎春舞会之数字舞蹈】
方法:暴力,判断,输出 本题为了更好理解建议各位可以复制样例来研究,甚至可以复制题解来测试思想,相信大家不会抄. 有什么不好的请大佬们在评论里指出,谢谢 #include <bits/stdc+ ...
- Spark性能调优篇八之shuffle调优
1 task的内存缓冲调节参数 2 reduce端聚合内存占比 spark.shuffle.file.buffer map task的内存缓冲调节参数,默认是3 ...
- SpringDataJPA 多对多的查询
主要的结构目录: 创建Role.java package cn.itcast.domain; import javax.persistence.*; import java.util.HashSet ...
- 为什么 HashMap 的容量大小要设置为2的N次方?
原文链接:https://www.changxuan.top/?p=1208 前两天,我在一位同学提交中看到了下面这样的一行代码,让我很是惊讶. Map<String, String> t ...
- JVM笔记【1】-- 运行时数据区
目录 (一)java内存区域管理 1.1 程序计数器 1.2 虚拟机栈 1.3 本地方法栈 1.4 java堆 1.5 方法区 1.5.1 运行时常量池 (二)直接内存 (一)java内存区域管理 C ...
- Spring-IOC注解编程
这里的注解是最初级的一些注解,掌握了之后再学习其它的注解 注解扫描 <?xml version="1.0" encoding="UTF-8"?> & ...
- 老板居然让我在Java项目中“造假”
1. 前言 老板说,明天甲方要来看产品,你得造点数据,而且数据必须是"真"的,演示效果要好看一些,这样他才会买我们的产品,我好明年给你换个嫂子.一般开发接到这种过分要求都不会很乐意 ...
- JPDA 远程调试方法记录
一.JPDA概念 JPDA(Java platform debugger architecture)是java平台调试架构的简称,由java虚拟机后端和调试平台前端组成. 1.java虚拟机提供了ja ...
- Idea mybatis maper接口与mapper.xml文件关联 会根据接口中的方法点在mxl中生成相应sql方法
- [转载]Mybatis Generator最完整配置详解
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...