<?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.whackon.addrook</groupId>
<artifactId>addrook-backend</artifactId>
<version>5.0.0</version>
<!-- 设置该项目打包格式为:jar -->
<packaging>jar</packaging>
<!-- 配置使用 Spring Boot Starter Parent 作为项目父级依赖 [BEGIN] -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
</parent>
<!-- 配置使用 Spring Boot Starter Parent 作为项目父级依赖 [END] -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<druid-spring-boot-starter.version>1.2.8</druid-spring-boot-starter.version>
<mybatis-spring-boot-starter.version>2.2.0</mybatis-spring-boot-starter.version>
<mybatis-plus-boot-starter.version>3.4.3.4</mybatis-plus-boot-starter.version>
<mapstruct.version>1.4.2.Final</mapstruct.version>
<hutool-all.version>5.7.17</hutool-all.version>
<springfox-boot-starter.version>3.0.0</springfox-boot-starter.version>
</properties>
<dependencies>
<!-- 配置 Spring Boot Starter Web 依赖 [BEGIN] -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 配置 Spring Boot Starter Web 依赖 [END] -->
<!-- 配置 MySQL Connector/J 依赖 [BEGIN] -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- 配置 MySQL Connector/J 依赖 [END] -->
<!-- 配置 Spring Boot Starter Data Redis 依赖 [BEGIN] -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 配置 Spring Boot Starter Data Redis 依赖 [END] -->
<!-- 配置 Druid Spring Boot Starter 依赖 [BEGIN] -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${druid-spring-boot-starter.version}</version>
</dependency>
<!-- 配置 Druid Spring Boot Starter 依赖 [END] -->
<!-- 配置 MyBatis Spring Boot Starter 依赖 [BEGIN] -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot-starter.version}</version>
</dependency>
<!-- 配置 MyBatis Spring Boot Starter 依赖 [END] -->
<!-- 配置 MyBatis Plus 依赖 [BEGIN] -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus-boot-starter.version}</version>
</dependency>
<!-- 配置 MyBatis Plus 依赖 [END] -->
<!-- 配置 MapStruct Core 依赖 [BEGIN] -->
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>${mapstruct.version}</version>
</dependency>
<!-- 配置 MapStruct Core 依赖 [END] -->
<!-- 配置 MapStruct Processor 依赖 [BEGIN] -->
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>${mapstruct.version}</version>
</dependency>
<!-- 配置 MapStruct Processor 依赖 [END] -->
<!-- 配置 Hutool All 依赖 [BEGIN] -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>${hutool-all.version}</version>
</dependency>
<!-- 配置 Hutool All 依赖 [END] -->
<!-- 配置 SpringFox Boot Starter 依赖 [BEGIN] -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>${springfox-boot-starter.version}</version>
</dependency>
<!-- 配置 SpringFox Boot Starter 依赖 [END] -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<!-- 配置 Spring Boot Maven Plugin 依赖 [BEGIN] -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- 配置 Spring Boot Maven Plugin 依赖 [END] -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.7.1</version>
</plugin>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.0.0</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
########## 开发环境配置信息
###### 系统占用端口号
server:
port: 9999
spring:
###### 系统应用名
application:
name: addrook-backend
###### 开启 Spring Boot Bean id 的 Override 机制
main:
allow-bean-definition-overriding: true
###### 配置 JDBC 连接信息
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/addrook_db?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: root
###### 配置使用 Druid 作为数据库连接池
type: com.alibaba.druid.pool.DruidDataSource
###### 配置 Druid 信息
druid:
min-idle: 3
max-active: 15
initial-size: 5
min-evictable-idle-time-millis: 30000
max-evictable-idle-time-millis: 60000
###### 配置 Druid 监控信息信息
stat-view-servlet:
###### 开启监控平台
enabled: true
###### 登录监控系统请求地址
url-pattern: /druid/*
###### 配置访问白名单 IP 地址
allow: 127.0.0.1
###### 配置访问用户名和密码
login-username: druid
login-password: 123456
###### 是否能够重置数据
reset-enable: false
###### 配置过滤规则
web-stat-filter:
###### 设置不统计哪些 URL
exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
###### 配置 MyBatis 信息
mybatis:
mapper-locations: classpath:/mapper/*.Mapper.xml
type-aliases-package: com.whackon.addrook.pojo.entity
package com.whackon.addrook.util;
import com.whackon.addrook.pojo.entity.Addrook;
import com.whackon.addrook.pojo.vo.AddrookVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
* <b>个人通讯录信息平台 - 视图实体转换工具类</b>
*
* @author Arthur
* @date 2021/12/12
* @version 5.0.0
* @since 1.0.0
*/
@Mapper(componentModel = "spring")
public interface PojoMapper {
PojoMapper INSTANCE = Mappers.getMapper(PojoMapper.class);
/**
* <b>将视图信息转换为实体信息</b>
* @param vo
* @return
*/
Addrook parseEntityFromVO(AddrookVO vo);
/**
* <b>将实体信息转换为视图信息</b>
* @param entity
* @return
*/
AddrookVO parseVOFromEntity(Addrook entity);
/**
* <b>将实体列表转换为视图列表</b>
* @param entityList
* @return
*/
List<AddrookVO> parseVOListFromEntityList(List<Addrook> entityList);
}