## 基础架构搭建 在这一章节我们正式开始框架的搭建 ## 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系统模块