From 4ee36699fec72c2fe6678f951b3ae9b804f48393 Mon Sep 17 00:00:00 2001
From: liwq <122639653@qq.com>
Date: Wed, 11 Jun 2025 17:34:59 +0800
Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=88=9D=E5=A7=8B=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
plugins-bom/pom.xml | 5 +-
pom.xml | 11 ++--
spring-plugin-mapstruct/.gitignore | 33 -----------
spring-plugin-mapstruct/pom.xml | 54 ------------------
.../src/main/resources/application.properties | 1 -
spring-plugin-test/pom.xml | 56 +++++++++++++++++--
.../plugins/mapstruct/TestApplication.java | 13 +++++
.../mapstruct/config/MapStructConvert.java | 30 ++++++++++
...ot.autoconfigure.AutoConfiguration.imports | 1 +
.../src/main/resources/application.properties | 1 +
.../com/plugins/mapstruct/package-info.java | 1 +
.../java/com/plugins/mapstruct/test/A.java | 17 ++++++
.../java/com/plugins/mapstruct/test/B.java | 16 ++++++
.../java/com/plugins/mapstruct/test/Run.java | 25 +++++++++
14 files changed, 162 insertions(+), 102 deletions(-)
delete mode 100644 spring-plugin-mapstruct/.gitignore
delete mode 100644 spring-plugin-mapstruct/pom.xml
delete mode 100644 spring-plugin-mapstruct/src/main/resources/application.properties
create mode 100644 spring-plugin-test/src/main/java/com/plugins/mapstruct/TestApplication.java
create mode 100644 spring-plugin-test/src/main/java/com/plugins/mapstruct/config/MapStructConvert.java
create mode 100644 spring-plugin-test/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
create mode 100644 spring-plugin-test/src/main/resources/application.properties
create mode 100644 spring-plugin-test/src/test/java/com/plugins/mapstruct/package-info.java
create mode 100644 spring-plugin-test/src/test/java/com/plugins/mapstruct/test/A.java
create mode 100644 spring-plugin-test/src/test/java/com/plugins/mapstruct/test/B.java
create mode 100644 spring-plugin-test/src/test/java/com/plugins/mapstruct/test/Run.java
diff --git a/plugins-bom/pom.xml b/plugins-bom/pom.xml
index 289b7df..3dc612c 100644
--- a/plugins-bom/pom.xml
+++ b/plugins-bom/pom.xml
@@ -11,9 +11,6 @@
pom
-
- com.plugins
- spring-plugin-mapstruct
-
+
diff --git a/pom.xml b/pom.xml
index 0c7ca28..95143c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,11 +8,7 @@
pom
plugins-integration
-
- plugins-bom
- spring-plugin-mapstruct
- spring-plugin-test
-
+
1.0.0
@@ -88,6 +84,11 @@
+
+ plugins-bom
+ spring-plugin-test
+
+
diff --git a/spring-plugin-mapstruct/.gitignore b/spring-plugin-mapstruct/.gitignore
deleted file mode 100644
index 667aaef..0000000
--- a/spring-plugin-mapstruct/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/spring-plugin-mapstruct/pom.xml b/spring-plugin-mapstruct/pom.xml
deleted file mode 100644
index 326b675..0000000
--- a/spring-plugin-mapstruct/pom.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
- 4.0.0
-
- com.plugins
- plugins-integration
- 1.0.0
-
- spring-plugin-mapstruct
-
- spring-plugin-mapstruct
- mapstruct 插件
-
-
-
- io.github.linpeilie
- mapstruct-plus-spring-boot-starter
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- ${maven-compiler-plugin.version}
-
- 17
- 17
-
-
- org.projectlombok
- lombok
- ${lombok.version}
-
-
- io.github.linpeilie
- mapstruct-plus-processor
- ${mapstruct-plus.version}
-
-
- org.projectlombok
- lombok-mapstruct-binding
- 0.2.0
-
-
-
-
-
-
-
-
-
diff --git a/spring-plugin-mapstruct/src/main/resources/application.properties b/spring-plugin-mapstruct/src/main/resources/application.properties
deleted file mode 100644
index 01e1608..0000000
--- a/spring-plugin-mapstruct/src/main/resources/application.properties
+++ /dev/null
@@ -1 +0,0 @@
-spring.application.name=spring-plugin-mapstruct
diff --git a/spring-plugin-test/pom.xml b/spring-plugin-test/pom.xml
index e7a20a7..f829cf3 100644
--- a/spring-plugin-test/pom.xml
+++ b/spring-plugin-test/pom.xml
@@ -10,15 +10,61 @@
spring-plugin-test
spring-plugin-test
- mapstruct 插件
+ 插件测试类
+ jar
+
- com.plugins
- spring-plugin-mapstruct
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+
+
+ io.github.linpeilie
+ mapstruct-plus-spring-boot-starter
+
+
+ org.projectlombok
+ lombok
+
+
-
-
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ ${maven-compiler-plugin.version}
+
+ 17
+ 17
+
+
+ org.projectlombok
+ lombok
+ ${lombok.version}
+
+
+ io.github.linpeilie
+ mapstruct-plus-processor
+ ${mapstruct-plus.version}
+
+
+ org.projectlombok
+ lombok-mapstruct-binding
+ 0.2.0
+
+
+
+
+
+
diff --git a/spring-plugin-test/src/main/java/com/plugins/mapstruct/TestApplication.java b/spring-plugin-test/src/main/java/com/plugins/mapstruct/TestApplication.java
new file mode 100644
index 0000000..7d5c7d6
--- /dev/null
+++ b/spring-plugin-test/src/main/java/com/plugins/mapstruct/TestApplication.java
@@ -0,0 +1,13 @@
+package com.plugins.mapstruct;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class TestApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(TestApplication.class, args);
+ }
+
+}
diff --git a/spring-plugin-test/src/main/java/com/plugins/mapstruct/config/MapStructConvert.java b/spring-plugin-test/src/main/java/com/plugins/mapstruct/config/MapStructConvert.java
new file mode 100644
index 0000000..c720ae8
--- /dev/null
+++ b/spring-plugin-test/src/main/java/com/plugins/mapstruct/config/MapStructConvert.java
@@ -0,0 +1,30 @@
+package com.plugins.mapstruct.config;
+
+
+import io.github.linpeilie.utils.CollectionUtils;
+import io.github.linpeilie.utils.StrUtil;
+import org.mapstruct.Named;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+@AutoConfiguration
+@Named("mapStructConvert")
+public class MapStructConvert {
+
+ @Named("stringToList")
+ public List stringToList(String str) {
+ return StrUtil.isBlank(str)? Collections.emptyList():Arrays.asList(str.split(","));
+ }
+
+ @Named("listToString")
+ public String listToString(List list) {
+ return CollectionUtils.isEmpty(list)? "": String.join(",", list);
+ }
+
+
+
+
+}
diff --git a/spring-plugin-test/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-plugin-test/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 0000000..cb3bef2
--- /dev/null
+++ b/spring-plugin-test/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.plugins.mapstruct.config.MapStructConvert
\ No newline at end of file
diff --git a/spring-plugin-test/src/main/resources/application.properties b/spring-plugin-test/src/main/resources/application.properties
new file mode 100644
index 0000000..19346d5
--- /dev/null
+++ b/spring-plugin-test/src/main/resources/application.properties
@@ -0,0 +1 @@
+spring.application.name=spring-plugin-test
diff --git a/spring-plugin-test/src/test/java/com/plugins/mapstruct/package-info.java b/spring-plugin-test/src/test/java/com/plugins/mapstruct/package-info.java
new file mode 100644
index 0000000..8774f46
--- /dev/null
+++ b/spring-plugin-test/src/test/java/com/plugins/mapstruct/package-info.java
@@ -0,0 +1 @@
+package com.plugins.mapstruct;
\ No newline at end of file
diff --git a/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/A.java b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/A.java
new file mode 100644
index 0000000..c6917ee
--- /dev/null
+++ b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/A.java
@@ -0,0 +1,17 @@
+package com.plugins.mapstruct.test;
+
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+@AutoMapper(target = B.class,reverseConvertGenerate = false)
+public class A {
+
+ private String id;
+ private String name;
+ private String age;
+ private String gender;
+
+}
diff --git a/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/B.java b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/B.java
new file mode 100644
index 0000000..659ee98
--- /dev/null
+++ b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/B.java
@@ -0,0 +1,16 @@
+package com.plugins.mapstruct.test;
+
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+@AutoMapper(target = A.class,reverseConvertGenerate = false)
+public class B {
+
+ private String id;
+ private String name;
+ private String age;
+
+}
diff --git a/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/Run.java b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/Run.java
new file mode 100644
index 0000000..a6d1b40
--- /dev/null
+++ b/spring-plugin-test/src/test/java/com/plugins/mapstruct/test/Run.java
@@ -0,0 +1,25 @@
+package com.plugins.mapstruct.test;
+
+import io.github.linpeilie.Converter;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+public class Run {
+
+ @Autowired
+ Converter converter;
+
+ @Test
+ void test1() {
+ A a = new A().setId("1")
+ .setName("")
+ .setAge("")
+ .setGender("");
+ B b = converter.convert(a, B.class);
+ System.out.println(b.toString());
+
+ }
+
+}