## 基础架构搭建
在这一章节我们正式开始框架的搭建
## Maven父模块搭建
为了方便后面我们随意拓展采用Maven多模块搭建
首先我们使用IDEA创建一个名称为`pre`的 Maven模块,该模块为整个工程的服务模块,用于聚合各个子模块。
然后打开IDEA,点击Create New Project新建一个Maven项目,Project SDK选择JDK 1.8
![file](https://pic.52lhd.com/blog/article/20191229152617962.png)
点击Next,如下图所示填写Name、路径、GroupId和ArtifactId:
![file](https://pic.52lhd.com/blog/article/20191229153421236.png)
点击Finish完成创建。创建好后,项目如下所示:
![file](https://pic.52lhd.com/blog/article/20191229153606200.png)
因为pre模块是项目的父模块,仅用于聚合子模块,所以我们可以把src目录下的内容全部删了,只保留pom.xml(pre.iml为IDEA文件,不能删哦),然后修改pom.xml,引入Spring Boot
```
<?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.xd.pre</groupId>
<artifactId>pre</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>pre</name>
<description>pre:Spring Boot,Spring Security 权限管理系统</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
<relativePath/>
</parent>
</project>
```
上面的pom配置中,我们指定了packaging为pom,表示这是一个纯聚合模块,无需打包为jar或者war;name指定为pre;引入了Spring Boot 2.2.2.RELEASE
至此,父模块搭建完毕,接下来开始搭建通用模块。
### 通用模块搭建
通用模块主要用于定义一些系统通用的实体类,工具类。
点击pre项目右击-> New -> Module...,新建一个Maven模块,Module SDK选择JDK 1.8:
![file](https://pic.52lhd.com/blog/article/20191229154128433.png)
ArtifactId填pre-common,然后点击Next:
![file](https://pic.52lhd.com/blog/article/20191229154216819.png)
填写内容如上图所示(注意pre-common位于pre目录下,它们在目录结构上是父级的关系),点击Finish完成创建。创建好后,项目结构如下所示:
![file](https://pic.52lhd.com/blog/article/20191229154455626.png)
这时候我们查看pre的pom文件,会发现它新增了如下内容
```
<modules>
<module>pre-common</module>
</modules>
```
稍后我们往pre-common模块的pom里添加一些后续要用到的工具类等
我们现在可以往pre的pom文件添加一些我们需要的依赖等
```
<?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.xd.pre</groupId>
<artifactId>pre</artifactId>
<version>1.0-SNAPSHOT</version>
<modules>
<module>pre-common</module>
</modules>
<packaging>pom</packaging>
<name>pre</name>
<description>pre:Spring Boot,Spring Security 权限管理系统</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
<relativePath/>
</parent>
<properties>
<java.version>1.8</java.version>
<velocity.version>2.1</velocity.version>
<hutool.version>4.5.6</hutool.version>
<fastjson.version>1.2.58</fastjson.version>
</properties>
<dependencies>
<!--web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--undertow容器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--hutool工具-->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>${hutool.version}</version>
</dependency>
<!--json解析-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
</dependencies>
</project>
```
lombok的使用需要安装相关插件(lombok可以通过注解自动生成get,set等方法,不懂的同学可以自行百度lombok)打开IDEA的插件,然后输入
![file](https://pic.52lhd.com/blog/article/20191229155104618.png)
至此,通用模块和基础架构搭建完毕了,接下来开始搭建RBAC系统模块
- 快速了解
- 1. 项目简介
- 2. 系统核心业务架构
- 3. 系统技术架构
- 使用教程
- 导入项目
- 1. 环境准备
- 2. 后端项目
- 3. 前端项目
- 开发文档
- 后端开发文档
- 1. 项目目录结构
- 2. 如何二次开发
- 3. 数据权限实现
- 4. 如何控制权限
- 5. 操作日志介绍
- 6. 如何获取当前登录用户信息
- 前端开发文档
- 1. 项目目录结构
- 2. 如何二次开发
- 更新日志
- 第三方登录说明
- 搭建教程
- 第一章.基础框架搭建
- 1.1.整体架构预览
- 1.2.基础架构搭建
- 1.3.配置文件
- 第二章.架构完善
- 2.1.搭建upms模块
- 2.2.参数统一化
- 2.3.异常处理
- 第三章.完善登录流程
- 3.1.表结构设计
- 3.2.引入安全框架
- 3.3.引入JWT
- 3.4.完善登录
- 3.5.演示登录
- 3.6.整合图形验证码
- 7.7.完善验证码登录
- 第四章. 前端系统搭建
- 4.1.前端基础架构搭建
- 4.2.封装Axios