创建工程
创建父工程
删除src目录,在pom.xml添加依赖:
代码:
<!--统一版本 字符编码-->
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
<!--子模块版本依赖控制。dependencyManagement添加的依赖并非真正的添加进来了,只是对依赖版本进行锁定-->
<dependencyManagement>
<dependencies>
<!--SpringBoot依赖配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.5.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--fastjson依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.33</version>
</dependency>
<!--jwt依赖-->
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.1</version>
</dependency>
<!--mybatisplus依赖-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<!-- easyexcel依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
</plugins>
</build>
创建公共子模块:
添加依赖:
代码:
<!-- 公共依赖-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 父工程锁定版本,此处不再配置版本-->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<!-- lombk-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!-- SpringBootSecurity启动器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!-- redis依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- fastjson依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
</dependency>
<!-- jwt依赖-->
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
</dependency>
<!-- mybatisPlus依赖-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
<!-- mysql数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- easyExcel依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
</dependency>
<!-- aop依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- swagger依赖-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
</dependencies>
创建admin子模块,并继承公共依赖:
继承公共依赖:
代码:
<!--继承公共依赖-->
<dependencies>
<dependency>
<groupId>cn.x4a</groupId>
<artifactId>x4a-framework</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
创建blog子模块并继承公共依赖:
至此,继承框架搭建完毕!
配置SpringBoot
配置application.yml:
代码:
server:
port: 7777
spring:
datasource:
url: jdbc:mysql://localhost:3306/x4a_blog?characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver # mysql8使用: com.mysql.cj.jdbc.Driver
servlet:
multipart: # 上传配置
max-file-size: 2MB
max-request-size: 5MB
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 日志
global-config:
db-config:
logic-delete-field: delFlag # 逻辑删除
logic-delete-value: 1
logic-not-delete-value: 0
id-type: auto # id自增
创建文章表(x4a_article):
CREATE TABLE `x4a_blog`.`Untitled` (
`id` bigint(200) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NULL COMMENT '标题',
`content` longtext NULL COMMENT '文章内容',
`type` char(1) NULL DEFAULT 2 COMMENT '文章类型:1文章 2草稿 默认2',
`summary` varchar(1024) NULL COMMENT '文章摘要',
`category_id` bigint(20) NULL COMMENT '所属分类id',
`thumbnail` varchar(255) NULL COMMENT '缩略图',
`is_top` char(1) NULL DEFAULT 0 COMMENT '是否置顶:0否 1是 默认0',
`status` char(1) NULL DEFAULT 1 COMMENT '状态:0已发布 1草稿 默认1',
`comment_count` int(11) NULL DEFAULT 0 COMMENT '评论数 默认0',
`view_count` bigint(200) NULL COMMENT '访问量 默认0',
`is_comment` char(1) NULL DEFAULT 1 COMMENT '是否允许评论 1是 0否 默认1',
`create_by` bigint(20) NULL COMMENT '创建人',
`create_time` datetime NULL COMMENT '创建时间',
`update_by` bigint(20) NULL COMMENT '更新人',
`update_time` datetime NULL COMMENT '更新时间',
`del_flag` int(1) NULL DEFAULT 0 COMMENT '删除标志: 0未删除 1已删除',
PRIMARY KEY (`id`)
);
因表太多,选择直接导入SQL文件:
导入数据后,使用EasyCode插件生成实体类:
IDEAl连接MySQL:
未完。待续…