修复用户删除接口的ID类型从Integer改为Long 移除未使用的Bouncy Castle依赖 添加dompurify依赖增强XSS防护 修复SQL表定义中的bigintBIGINT语法错误 优化图片预览接口的安全检查和错误处理 添加Vditor渲染引擎预加载和图片懒加载 统一分组和文件接口的ID类型为Long 增强前端用户状态管理,添加token过期检查 优化Markdown内容渲染流程和图片URL处理
222 lines
7.8 KiB
XML
222 lines
7.8 KiB
XML
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<parent>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>3.5.0</version>
|
|
<relativePath/> <!-- lookup parent from repository -->
|
|
</parent>
|
|
<groupId>com.test</groupId>
|
|
<artifactId>biji-houdaun</artifactId>
|
|
<version>0.0.1-SNAPSHOT</version>
|
|
<name>biji-houdaun</name>
|
|
<description>biji-houdaun</description>
|
|
<url/>
|
|
<licenses>
|
|
<license/>
|
|
</licenses>
|
|
<developers>
|
|
<developer/>
|
|
</developers>
|
|
<scm>
|
|
<connection/>
|
|
<developerConnection/>
|
|
<tag/>
|
|
<url/>
|
|
</scm>
|
|
<properties>
|
|
<java.version>17</java.version>
|
|
<knife4j.version>4.5.0</knife4j.version>
|
|
<mybatis-plus.version>3.5.7</mybatis-plus.version>
|
|
</properties>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-security</artifactId>
|
|
</dependency>
|
|
|
|
<!-- JWT Library -->
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-api</artifactId>
|
|
<version>0.11.5</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-impl</artifactId>
|
|
<version>0.11.5</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-jackson</artifactId>
|
|
<version>0.11.5</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
<!-- 测试依赖 -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-aop</artifactId>
|
|
</dependency>
|
|
<!-- MySQL Driver -->
|
|
<dependency>
|
|
<groupId>com.mysql</groupId>
|
|
<artifactId>mysql-connector-j</artifactId>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>cn.hutool</groupId>
|
|
<artifactId>hutool-all</artifactId>
|
|
<version>5.8.26</version>
|
|
</dependency>
|
|
<!-- Knife4j API 文档 -->
|
|
<dependency>
|
|
<groupId>com.github.xiaoymin</groupId>
|
|
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
|
|
<version>${knife4j.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springdoc</groupId>
|
|
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
|
|
<version>2.7.0</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<!-- MyBatis Plus -->
|
|
<dependency>
|
|
<groupId>com.baomidou</groupId>
|
|
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
|
|
<version>${mybatis-plus.version}</version>
|
|
</dependency>
|
|
<!-- UUID 库,支持 UUID v7 -->
|
|
<dependency>
|
|
<groupId>com.fasterxml.uuid</groupId>
|
|
<artifactId>java-uuid-generator</artifactId>
|
|
<version>4.0.1</version>
|
|
</dependency>
|
|
<!-- 密码加密-->
|
|
|
|
|
|
|
|
<!-- SHA256计算工具 -->
|
|
<dependency>
|
|
<groupId>commons-codec</groupId>
|
|
<artifactId>commons-codec</artifactId>
|
|
<version>1.16.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-validation</artifactId>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<!-- 添加下面的在打包的时候不需要这docker。。。-->
|
|
<!-- <executions>-->
|
|
<!-- <execution>-->
|
|
<!-- <id>build-backend</id>-->
|
|
<!-- <goals>-->
|
|
<!-- <goal>build-image</goal>-->
|
|
<!-- </goals>-->
|
|
<!-- <configuration>-->
|
|
<!-- <imageName>${project.artifactId}:${project.version}</imageName>-->
|
|
<!-- </configuration>-->
|
|
<!-- </execution>-->
|
|
<!-- </executions>-->
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.spotify</groupId>
|
|
<artifactId>docker-maven-plugin</artifactId>
|
|
<version>1.2.2</version>
|
|
<configuration>
|
|
<dockerHost>http://127.0.0.1:2375</dockerHost>
|
|
<!-- 指定镜像名称 -->
|
|
<imageName>${project.artifactId}:${project.version}</imageName>
|
|
<!-- 指定使用外部Dockerfile -->
|
|
<dockerDirectory>src/main/java/com/test/docker</dockerDirectory>
|
|
|
|
<!-- 保留资源复制配置 -->
|
|
<resources>
|
|
<resource>
|
|
<targetPath>/</targetPath>
|
|
<directory>${project.build.directory}</directory>
|
|
<include>${project.build.finalName}.jar</include>
|
|
</resource>
|
|
<resource>
|
|
<targetPath>/data</targetPath>
|
|
<directory>${project.basedir}/..</directory>
|
|
<include>mydatabase.db</include>
|
|
</resource>
|
|
</resources>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
<!-- 资源过滤-->
|
|
<resources>
|
|
<resource>
|
|
<filtering>true</filtering>
|
|
<directory>src/main/resources</directory>
|
|
</resource>
|
|
</resources>
|
|
</build>
|
|
|
|
|
|
<profiles>
|
|
<!-- 开发环境 -->
|
|
<profile>
|
|
<id>dev</id>
|
|
<activation>
|
|
<activeByDefault>true</activeByDefault>
|
|
</activation>
|
|
</profile>
|
|
|
|
<!-- 生产环境排除Knife4j和springdoc -->
|
|
<profile>
|
|
<id>prod</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>
|
|
<groupId>com.github.xiaoymin</groupId>
|
|
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
|
|
</exclude>
|
|
<exclude>
|
|
<groupId>org.springdoc</groupId>
|
|
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
|
|
</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project>
|