## 基礎架構搭建
在這一章節我們正式開始框架的搭建
## Maven父模塊搭建
為了方便后面我們隨意拓展采用Maven多模塊搭建
首先我們使用IDEA創建一個名稱為`pre`的 Maven模塊,該模塊為整個工程的服務模塊,用于聚合各個子模塊。
然后打開IDEA,點擊Create New Project新建一個Maven項目,Project SDK選擇JDK 1.8

點擊Next,如下圖所示填寫Name、路徑、GroupId和ArtifactId:

點擊Finish完成創建。創建好后,項目如下所示:

因為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:

ArtifactId填pre-common,然后點擊Next:

填寫內容如上圖所示(注意pre-common位于pre目錄下,它們在目錄結構上是父級的關系),點擊Finish完成創建。創建好后,項目結構如下所示:

這時候我們查看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的插件,然后輸入

至此,通用模塊和基礎架構搭建完畢了,接下來開始搭建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