- 新增DynamicSpecificationBuilder工具类,支持根据DTO动态生成JPA Specification查询条件 - 添加FieldMatch注解,用于配置字段匹配方式和查询条件 - 添加MatchType枚举,定义多种字段匹配类型如EQUALS、CONTAINS、BETWEEN等 - 添加LogicalOperator枚举,支持AND和OR逻辑操作符 - 实现缓存机制提升反射操作性能,包括实体字段缓存、DTO字段信息缓存等 - 支持嵌套属性访问,如user.address.city格式的字段路径 - 提供默认匹配机制,根据字段类型自动选择合适的匹配方式 - 添加PageableFactory接口,简化分页参数处理 - 更新zkh-data模块依赖,引入Jakarta Persistence API和Spring Data JPA - 升级项目版本至1.2,统一管理各模块版本号 - 添加详细的使用文档README.md,包含使用示例和最佳实践
170 lines
6.8 KiB
XML
170 lines
6.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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>vip.jcfd</groupId>
|
|
<artifactId>zkh-framework</artifactId>
|
|
<version>1.2</version>
|
|
<packaging>pom</packaging>
|
|
<name>ZKH Framework</name>
|
|
<description>A Java framework for ZKH applications</description>
|
|
<url>https://gitea.jcfd.vip/zkh/zkh-framework</url>
|
|
|
|
<licenses>
|
|
<license>
|
|
<name>The Apache Software License, Version 2.0</name>
|
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
|
</license>
|
|
</licenses>
|
|
|
|
<developers>
|
|
<developer>
|
|
<name>zkh</name>
|
|
<email>1650697374@qq.com</email>
|
|
<organization>横球集团</organization>
|
|
<organizationUrl>https://www.jcfd.vip</organizationUrl>
|
|
</developer>
|
|
</developers>
|
|
|
|
<scm>
|
|
<connection>scm:git:git://gitea.jcfd.vip/zkh/zkh-framework.git</connection>
|
|
<developerConnection>scm:git:ssh://gitea.jcfd.vip:zkh/zkh-framework.git</developerConnection>
|
|
<url>https://gitea.jcfd.vip/zkh/zkh-framework</url>
|
|
</scm>
|
|
|
|
<modules>
|
|
<module>zkh-common</module>
|
|
<module>zkh-web</module>
|
|
<module>zkh-data</module>
|
|
</modules>
|
|
|
|
<properties>
|
|
<maven.compiler.source>21</maven.compiler.source>
|
|
<maven.compiler.target>21</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<spring-boot.version>3.5.7</spring-boot.version>
|
|
</properties>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-dependencies</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>vip.jcfd</groupId>
|
|
<artifactId>zkh-common</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>vip.jcfd</groupId>
|
|
<artifactId>zkh-web</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>vip.jcfd</groupId>
|
|
<artifactId>zkh-data</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>release</id>
|
|
<build>
|
|
<plugins>
|
|
<!-- Maven GPG Plugin - 用于签名构件 -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sign-artifacts</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>sign</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<!-- 使用环境变量中的gpg密钥密码 -->
|
|
<passphrase>${env.GPG_PASSPHRASE}</passphrase>
|
|
<!-- 指定GPG可执行文件路径 -->
|
|
<executable>gpg</executable>
|
|
<!-- 使用默认密钥 -->
|
|
<useAgent>true</useAgent>
|
|
<!-- 设置gpg主目录 -->
|
|
<gpgArguments>
|
|
<arg>--pinentry-mode</arg>
|
|
<arg>loopback</arg>
|
|
</gpgArguments>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Central Publishing Plugin - 发布到Maven Central -->
|
|
<plugin>
|
|
<groupId>org.sonatype.central</groupId>
|
|
<artifactId>central-publishing-maven-plugin</artifactId>
|
|
<version>0.9.0</version>
|
|
<extensions>true</extensions>
|
|
<configuration>
|
|
<publishingServerId>central</publishingServerId>
|
|
<!-- 确保所有文件都被签名 -->
|
|
<autoPublish>true</autoPublish>
|
|
</configuration>
|
|
</plugin>
|
|
<!-- 在发布时激活source和javadoc插件 -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>3.3.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar-no-fork</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>3.5.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-javadocs</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<!-- GPG签名 -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sign-artifacts</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>sign</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|