diff --git a/example/basic-example/basic-example-main/pom.xml b/example/basic-example/basic-example-main/pom.xml index 82b23e6cfde3109ee8ccec33ac89350897f339dd..3aa4d38022276897d824ad57a83a78fac71ee04d 100644 --- a/example/basic-example/basic-example-main/pom.xml +++ b/example/basic-example/basic-example-main/pom.xml @@ -13,14 +13,14 @@ com.gitee.starblues basic-example-main - 2.2.3-RELEASE + 2.2.4-RELEASE jar 2.7.0 2.3.2 1.6 - 2.2.3-RELEASE + 2.2.4-RELEASE diff --git a/example/basic-example/basic-example-main/src/main/java/com/basic/example/main/ExampleMain.java b/example/basic-example/basic-example-main/src/main/java/com/basic/example/main/ExampleMain.java index f12ad2c2b6ab9827c09981cb4f9f929edcca920d..795a9907f244629fe1d6746bcb6f9bde5e4f34d3 100644 --- a/example/basic-example/basic-example-main/src/main/java/com/basic/example/main/ExampleMain.java +++ b/example/basic-example/basic-example-main/src/main/java/com/basic/example/main/ExampleMain.java @@ -15,4 +15,7 @@ public class ExampleMain { SpringApplication.run(ExampleMain.class, args); } + + + } diff --git a/example/basic-example/basic-example-runner/pom.xml b/example/basic-example/basic-example-runner/pom.xml index 2e56acf0f248507e1d7c0b0b8656a6bf36d8bf01..b3050c2cf00b1b3d06445114ff21941193df8f2d 100644 --- a/example/basic-example/basic-example-runner/pom.xml +++ b/example/basic-example/basic-example-runner/pom.xml @@ -14,7 +14,7 @@ com.gitee.starblues basic-example-runner - 2.2.3-RELEASE + 2.2.4-RELEASE pom diff --git a/example/basic-example/plugins/basic-example-plugin1/plugin.properties b/example/basic-example/plugins/basic-example-plugin1/plugin.properties index ee944499c1c602459cb21019164fb239dc639d74..0f000938be254c50543d3c947973cddded155032 100644 --- a/example/basic-example/plugins/basic-example-plugin1/plugin.properties +++ b/example/basic-example/plugins/basic-example-plugin1/plugin.properties @@ -1,4 +1,4 @@ plugin.id=basic-example-plugin1 plugin.class=com.basic.example.plugin1.DefinePlugin -plugin.version=2.2.3-RELEASE +plugin.version=2.2.4-RELEASE plugin.provider=StarBlues \ No newline at end of file diff --git a/example/basic-example/plugins/basic-example-plugin1/pom.xml b/example/basic-example/plugins/basic-example-plugin1/pom.xml index 9fe66f330d924a5acda1ae14f242881713c70951..706998f19f06fdaa8bd59e11ca0edd8c7bdc54ae 100644 --- a/example/basic-example/plugins/basic-example-plugin1/pom.xml +++ b/example/basic-example/plugins/basic-example-plugin1/pom.xml @@ -8,12 +8,12 @@ com.gitee.starblues basic-example-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE ../pom.xml basic-example-plugin1 - 2.2.3-RELEASE + 2.2.4-RELEASE jar diff --git a/example/basic-example/plugins/basic-example-plugin2/plugin.properties b/example/basic-example/plugins/basic-example-plugin2/plugin.properties index 00c6e52ff75cdb39fb4ac5cce736dcb23524b949..debcff2227a75ce261c67363ae581830f4ffdc07 100644 --- a/example/basic-example/plugins/basic-example-plugin2/plugin.properties +++ b/example/basic-example/plugins/basic-example-plugin2/plugin.properties @@ -1,4 +1,4 @@ plugin.id=basic-example-plugin2 plugin.class=com.basic.example.plugin2.DefinePlugin -plugin.version=2.2.3-RELEASE +plugin.version=2.2.4-RELEASE plugin.provider=StarBlues \ No newline at end of file diff --git a/example/basic-example/plugins/basic-example-plugin2/pom.xml b/example/basic-example/plugins/basic-example-plugin2/pom.xml index 599b3c71fc004347ee1b34f8df98f99bc2c9a8d9..5bcf362f7e9ca21592120d0124e63d8d845d7148 100644 --- a/example/basic-example/plugins/basic-example-plugin2/pom.xml +++ b/example/basic-example/plugins/basic-example-plugin2/pom.xml @@ -8,12 +8,12 @@ com.gitee.starblues basic-example-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE ../pom.xml basic-example-plugin2 - 2.2.3-RELEASE + 2.2.4-RELEASE jar diff --git a/example/basic-example/plugins/pom.xml b/example/basic-example/plugins/pom.xml index 533e70ff790ff9b1d8da0a514a0170537b570f31..e60fa7b7192006b33a502bdd645126f4beb16a19 100644 --- a/example/basic-example/plugins/pom.xml +++ b/example/basic-example/plugins/pom.xml @@ -7,7 +7,7 @@ com.gitee.starblues basic-example-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE pom diff --git a/example/basic-example/pom.xml b/example/basic-example/pom.xml index bc91e56feb3032687e238199328dd5980a9125d2..2ecc4522749ca3941fda1b6589236c3caba52212 100644 --- a/example/basic-example/pom.xml +++ b/example/basic-example/pom.xml @@ -6,7 +6,7 @@ com.gitee.starblues basic-example - 2.2.3-RELEASE + 2.2.4-RELEASE pom 基本案例 diff --git a/example/integration-mybatis/integration-mybatis-main/pom.xml b/example/integration-mybatis/integration-mybatis-main/pom.xml index f601315e4a7320d126dd0c882efa5617a6a54e3f..e1095c5eb4e637a3950f2249679a1d9fd993f304 100644 --- a/example/integration-mybatis/integration-mybatis-main/pom.xml +++ b/example/integration-mybatis/integration-mybatis-main/pom.xml @@ -14,14 +14,14 @@ com.gitee.starblues integration-mybatis-main - 2.2.3-RELEASE + 2.2.4-RELEASE jar 主程序模块 - 2.2.3-RELEASE - 2.2.3-RELEASE - 2.2.3-RELEASE + 2.2.4-RELEASE + 2.2.4-RELEASE + 2.2.4-RELEASE 2.0.1 2.7.0 1.6 diff --git a/example/integration-mybatis/integration-mybatis-plugin-parent/pom.xml b/example/integration-mybatis/integration-mybatis-plugin-parent/pom.xml index cbb086511576d169d882bca99abfee58e3f73a8e..dd3043c9d5079d59d03a0212bf91bd57ad37a5eb 100644 --- a/example/integration-mybatis/integration-mybatis-plugin-parent/pom.xml +++ b/example/integration-mybatis/integration-mybatis-plugin-parent/pom.xml @@ -7,7 +7,7 @@ com.gitee.starblues integration-mybatis-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE pom diff --git a/example/integration-mybatis/integration-mybatis-runner/pom.xml b/example/integration-mybatis/integration-mybatis-runner/pom.xml index a10c71ae6704d97806486a9a638034ca1f9a3e7d..6be68998d361a7f4bba242fe02e35eddb8a8bf24 100644 --- a/example/integration-mybatis/integration-mybatis-runner/pom.xml +++ b/example/integration-mybatis/integration-mybatis-runner/pom.xml @@ -14,7 +14,7 @@ com.gitee.starblues integration-mybatis-runner - 2.2.3-RELEASE + 2.2.4-RELEASE jar 启动程序模块。将启动类配置到该模块下 diff --git a/example/integration-mybatis/plugins/integration-mybatis-plugin1/plugin.properties b/example/integration-mybatis/plugins/integration-mybatis-plugin1/plugin.properties index 4ff6f8fcfbcee627f443207c468ccc63719ca6c6..64ce9706e068b56a3e65d71310ef6e8a7882b477 100644 --- a/example/integration-mybatis/plugins/integration-mybatis-plugin1/plugin.properties +++ b/example/integration-mybatis/plugins/integration-mybatis-plugin1/plugin.properties @@ -1,4 +1,4 @@ plugin.id=integration-mybatis-plugin1 plugin.class=com.mybatis.plugin1.ExamplePlugin1 -plugin.version=2.2.3-RELEASE +plugin.version=2.2.4-RELEASE plugin.provider=StarBlues \ No newline at end of file diff --git a/example/integration-mybatis/plugins/integration-mybatis-plugin1/pom.xml b/example/integration-mybatis/plugins/integration-mybatis-plugin1/pom.xml index d509a5cb609708f60f9bf624c31fb7077bb1a235..cf802bb6df1e2b7bd1886e2646125376b085de39 100644 --- a/example/integration-mybatis/plugins/integration-mybatis-plugin1/pom.xml +++ b/example/integration-mybatis/plugins/integration-mybatis-plugin1/pom.xml @@ -8,12 +8,12 @@ com.gitee.starblues integration-mybatis-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE ../../integration-mybatis-plugin-parent/pom.xml integration-mybatis-plugin1 - 2.2.3-RELEASE + 2.2.4-RELEASE jar diff --git a/example/integration-mybatis/plugins/integration-mybatis-plugin1/src/main/java/com/mybatis/plugin1/mapper/Plugin1Mapper.java b/example/integration-mybatis/plugins/integration-mybatis-plugin1/src/main/java/com/mybatis/plugin1/mapper/Plugin1Mapper.java index ed30329645f783c3251f31dea8c06d2eb8f3b5d6..3c482c93a06d404253759afc2deea35705ac79e4 100644 --- a/example/integration-mybatis/plugins/integration-mybatis-plugin1/src/main/java/com/mybatis/plugin1/mapper/Plugin1Mapper.java +++ b/example/integration-mybatis/plugins/integration-mybatis-plugin1/src/main/java/com/mybatis/plugin1/mapper/Plugin1Mapper.java @@ -3,6 +3,7 @@ package com.mybatis.plugin1.mapper; import com.gitee.starblues.extension.mybatis.annotation.PluginMapper; import com.mybatis.plugin1.entity.Plugin1; import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -13,7 +14,7 @@ import java.util.List; * @author zhangzhuo * @version 1.0 */ -@PluginMapper +@Mapper public interface Plugin1Mapper { diff --git a/example/integration-mybatis/plugins/integration-mybatis-plugin2/plugin.properties b/example/integration-mybatis/plugins/integration-mybatis-plugin2/plugin.properties index 9fc286a24fbc02f67996a0ee7f3ab95f92fcea26..4a7ea56c721d0d501941d394fbaa28667405c77e 100644 --- a/example/integration-mybatis/plugins/integration-mybatis-plugin2/plugin.properties +++ b/example/integration-mybatis/plugins/integration-mybatis-plugin2/plugin.properties @@ -1,4 +1,4 @@ plugin.id=integration-mybatis-plugin2 plugin.class=com.mybatis.plugin2.ExamplePlugin2 -plugin.version=2.2.3-RELEASE +plugin.version=2.2.4-RELEASE plugin.provider=StarBlues \ No newline at end of file diff --git a/example/integration-mybatis/plugins/integration-mybatis-plugin2/pom.xml b/example/integration-mybatis/plugins/integration-mybatis-plugin2/pom.xml index 7fa63280ac1f35a507358891b5bcf3dee92ee328..fd1a5f1960a4be30073c67d45948d87695e5b3be 100644 --- a/example/integration-mybatis/plugins/integration-mybatis-plugin2/pom.xml +++ b/example/integration-mybatis/plugins/integration-mybatis-plugin2/pom.xml @@ -8,12 +8,12 @@ com.gitee.starblues integration-mybatis-plugin-parent - 2.2.3-RELEASE + 2.2.4-RELEASE ../../integration-mybatis-plugin-parent/pom.xml integration-mybatis-plugin2 - 2.2.3-RELEASE + 2.2.4-RELEASE jar diff --git a/example/integration-mybatis/pom.xml b/example/integration-mybatis/pom.xml index 3faec6d6d397a871128620d9caabc9c0197ad483..eaf503bf153dd89fca3ebb2a3b6fb7c81fcc58fa 100644 --- a/example/integration-mybatis/pom.xml +++ b/example/integration-mybatis/pom.xml @@ -7,7 +7,7 @@ com.gitee.starblues integration-mybatis - 2.2.3-RELEASE + 2.2.4-RELEASE pom 集成mybatis案例 diff --git a/example/integration-mybatisplus/integration-mybatisplus-main/pom.xml b/example/integration-mybatisplus/integration-mybatisplus-main/pom.xml index b6184620d1d65a16435ceb06e73bef3a392d9924..265302158edaa0cab0c99919ad871f3cbfcb9d62 100644 --- a/example/integration-mybatisplus/integration-mybatisplus-main/pom.xml +++ b/example/integration-mybatisplus/integration-mybatisplus-main/pom.xml @@ -13,7 +13,7 @@ com.gitee.starblues - 2.2.3-RELEASE + 2.2.4-RELEASE integration-mybatisplus-main jar 集成mybatis-plus 案例--主程序 @@ -27,8 +27,8 @@ 2.0.1 3.2.0 - 2.2.3-RELEASE - 2.2.3-RELEASE + 2.2.4-RELEASE + 2.2.4-RELEASE 2.7.0 1.6 diff --git a/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/MybatisPlusMain.java b/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/MybatisPlusMain.java index df71af7bed04eadfb5d221ac9975be85a36b6169..2c39fe36f4ceaffb426fb525f7dfaa56ceb6950f 100644 --- a/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/MybatisPlusMain.java +++ b/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/MybatisPlusMain.java @@ -1,6 +1,5 @@ package com.mybatisplus.main; -import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -11,7 +10,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; * @version 1.0 */ @SpringBootApplication(scanBasePackages = { "com.mybatisplus.main" }) -@MapperScan("com.mybatisplus.main.mapper") public class MybatisPlusMain { public static void main(String[] args) { diff --git a/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/mapper/UserMapper.java b/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/mapper/UserMapper.java index 705a5aa60dbb58d59e1d2e708d0b877385aa16cb..2593bed9c1404c406f3eda84895369ee2c5b2070 100644 --- a/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/mapper/UserMapper.java +++ b/example/integration-mybatisplus/integration-mybatisplus-main/src/main/java/com/mybatisplus/main/mapper/UserMapper.java @@ -2,10 +2,9 @@ package com.mybatisplus.main.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.mybatisplus.main.entity.User; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; -import org.springframework.stereotype.Repository; - import java.util.List; /** @@ -14,6 +13,7 @@ import java.util.List; * @author zhangzhuo * @version 1.0 */ +@Mapper public interface UserMapper extends BaseMapper { /** diff --git a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/plugin.properties b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/plugin.properties index 6bff82a262aaf37ac365ac7fa04b95513e36acb0..841713baeff1012616323b438470f76c915e17af 100644 --- a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/plugin.properties +++ b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/plugin.properties @@ -1,4 +1,4 @@ plugin.id=integration-mybatisplus-plugin plugin.class=com.mybatisplus.plugin.MybatisPlusPlugin -plugin.version=2.2.3-RELEASE +plugin.version=2.2.4-RELEASE plugin.provider=StarBlues \ No newline at end of file diff --git a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/pom.xml b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/pom.xml index 76505b078c574ddc6362dce63517eaa7e1270db4..67e9b873dc32a7408d7f6a400aa21c1739cff614 100644 --- a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/pom.xml +++ b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/pom.xml @@ -6,11 +6,10 @@ com.gitee.starblues integration-mybatisplus-plugin - 2.2.3-RELEASE + 2.2.4-RELEASE jar - integration-mybatisplus-plugin com.mybatisplus.plugin.MybatisPlusPlugin ${project.version} diff --git a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/src/main/java/com/mybatisplus/plugin/entity/PluginData.java b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/src/main/java/com/mybatisplus/plugin/entity/PluginData.java index adf2c1ef9e2b05fda9510fa8df90b0631bd510d8..ea168c9e4243aa11b667a0f613deee789d5b908a 100644 --- a/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/src/main/java/com/mybatisplus/plugin/entity/PluginData.java +++ b/example/integration-mybatisplus/plugins/integration-mybatisplus-plugin/src/main/java/com/mybatisplus/plugin/entity/PluginData.java @@ -3,6 +3,7 @@ package com.mybatisplus.plugin.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import org.apache.ibatis.type.Alias; /** * description @@ -11,6 +12,7 @@ import com.baomidou.mybatisplus.annotation.TableName; * @version 1.0 */ @TableName("plugin_data") +@Alias("pluginData") public class PluginData { @TableId(type = IdType.UUID) diff --git a/example/integration-mybatisplus/pom.xml b/example/integration-mybatisplus/pom.xml index 75ce9178cda64cf7022f88b10c59109843e544c1..726a50467f6a76392d552fcec5af833a1489abe7 100644 --- a/example/integration-mybatisplus/pom.xml +++ b/example/integration-mybatisplus/pom.xml @@ -6,7 +6,7 @@ com.gitee.starblues integration-mybatisplus - 2.2.3-RELEASE + 2.2.4-RELEASE pom 集成mybatis-plus案例 diff --git a/example/integration-tkmybatis/integration-tkmybatis-main/src/main/java/com/tkmybatis/main/rest/UserController.java b/example/integration-tkmybatis/integration-tkmybatis-main/src/main/java/com/tkmybatis/main/rest/UserController.java new file mode 100644 index 0000000000000000000000000000000000000000..57acd1d32ebe1524fa45d3e95458f3137ae3d421 --- /dev/null +++ b/example/integration-tkmybatis/integration-tkmybatis-main/src/main/java/com/tkmybatis/main/rest/UserController.java @@ -0,0 +1,34 @@ +package com.tkmybatis.main.rest; + +import com.google.common.collect.Lists; +import com.tkmybatis.main.entity.User; +import com.tkmybatis.main.mapper.UserMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * description + * + * @author zhangzhuo + * @version 1.0 + */ +@RestController +@RequestMapping("/user") +public class UserController { + + @Autowired + private UserMapper userMapper; + + + @GetMapping + public List getUser(){ + return userMapper.selectAll(); + } + + + +} diff --git a/example/pom.xml b/example/pom.xml index 4df045d2fc040ba9a7201046e33832c03880f727..d6fcc0feb62bf0fd4fa4f7d503a05e98c1698821 100644 --- a/example/pom.xml +++ b/example/pom.xml @@ -6,7 +6,7 @@ com.gitee.starblues springboot-plugin-framework-example - 2.2.3-RELEASE + 2.2.4-RELEASE pom diff --git a/pom.xml b/pom.xml index 44a212a8c6eeb086ed2ced26e2ab3fb2f0f191e6..dcb46accd79fc913ee7e2e1ccda633997aadc8d1 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ com.gitee.starblues springboot-plugin-framework-parent pom - 2.2.3-RELEASE + 2.2.4-RELEASE spring boot 插件开发集成包 diff --git a/springboot-plugin-framework-extension/pom.xml b/springboot-plugin-framework-extension/pom.xml index f418c24b05ba3fe22a9f2b2edd7c587078d25b78..fe8c3818f35aaf11b2a8a468d80df931ba2f891c 100644 --- a/springboot-plugin-framework-extension/pom.xml +++ b/springboot-plugin-framework-extension/pom.xml @@ -9,7 +9,7 @@ com.gitee.starblues springboot-plugin-framework-extension pom - 2.2.3-RELEASE + 2.2.4-RELEASE spring boot 插件式开发集成包--扩展模块 diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/pom.xml b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/pom.xml index 205f27b6254b7943d519b3df6fd22c46f359fa0d..f3748f7719f7f389212bdfdb286992a6e4805997 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/pom.xml +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/pom.xml @@ -13,7 +13,7 @@ com.gitee.starblues springboot-plugin-framework-extension-mybatis - 2.2.3-RELEASE + 2.2.4-RELEASE jar 插件扩展-spring boot mybatis 集成扩展 @@ -64,7 +64,7 @@ 3.1.0 1.6 - 2.2.3-RELEASE + 2.2.4-RELEASE 2.0.1 3.2.0 @@ -93,7 +93,6 @@ provided - diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMapperGroup.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMapperGroup.java index 9fe3c538cf24acab627ce906563bada7c3933de1..db06bbb4bbca95d9152531065a3560d98469cee5 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMapperGroup.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMapperGroup.java @@ -4,6 +4,7 @@ import com.gitee.starblues.extension.mybatis.annotation.PluginMapper; import com.gitee.starblues.factory.process.pipe.classs.PluginClassGroupExtend; import com.gitee.starblues.realize.BasePlugin; import com.gitee.starblues.utils.AnnotationsUtils; +import org.apache.ibatis.annotations.Mapper; /** * 插件中的Mapper接口分组 @@ -27,7 +28,8 @@ public class PluginMapperGroup implements PluginClassGroupExtend { @Override public boolean filter(Class aClass) { - return AnnotationsUtils.haveAnnotations(aClass, false, PluginMapper.class); + return AnnotationsUtils.haveAnnotations(aClass, false, PluginMapper.class) || + AnnotationsUtils.haveAnnotations(aClass, false, Mapper.class); } @Override diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisEntityProcessor.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisEntityProcessor.java index a278a5b63681d8bc3887fca9c5f8fb6ecb65f248..a7d72e1e982a727d63b9dcab14d0001049a01ef5 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisEntityProcessor.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisEntityProcessor.java @@ -1,6 +1,7 @@ package com.gitee.starblues.extension.mybatis; import com.gitee.starblues.extension.mybatis.configuration.SpringBootMybatisConfig; +import com.gitee.starblues.extension.mybatis.utils.TypeAliasRegistryUtils; import com.gitee.starblues.factory.PluginRegistryInfo; import com.gitee.starblues.factory.process.pipe.PluginPipeProcessorExtend; import com.gitee.starblues.realize.BasePlugin; @@ -14,7 +15,6 @@ import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationContext; import org.springframework.util.StringUtils; -import java.lang.reflect.Field; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -69,8 +69,13 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { mybatisAliasNames = new HashSet<>(); pluginRegistryInfo.addExtension(ALIAS_NAME_KEY, mybatisAliasNames); } - processEntityClass(pluginRegistryInfo, typeAliasRegistry, mybatisAliasNames); - processAliasMapping(pluginRegistryInfo, typeAliasRegistry, mybatisAliasNames); + Map> typeAliases = TypeAliasRegistryUtils.getTypeAliases(typeAliasRegistry); + if(typeAliases == null){ + LOG.warn("Not found mybatis typeAliases Map"); + return; + } + processEntityClass(pluginRegistryInfo, typeAliases, mybatisAliasNames); + processAliasMapping(pluginRegistryInfo, typeAliases, mybatisAliasNames); } private TypeAliasRegistry getTypeAliasRegistry() { @@ -93,10 +98,10 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { if(typeAliasRegistry == null){ return; } + Map> typeAliases = TypeAliasRegistryUtils.getTypeAliases(typeAliasRegistry); Set mybatisAliasNames = pluginRegistryInfo.getExtension(ALIAS_NAME_KEY); if(mybatisAliasNames != null && !mybatisAliasNames.isEmpty()){ for (String mybatisAliasName : mybatisAliasNames) { - Map> typeAliases = getTypeAliases(typeAliasRegistry); typeAliases.remove(mybatisAliasName); } } @@ -106,18 +111,16 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { /** * 处理别名的实体类 * @param pluginRegistryInfo 注册的插件信息 - * @param typeAliasRegistry 别名注册器 + * @param typeAliases mybatis 中内置的别名 Map集合 + * @param mybatisAliasNames 插件中别名存储集合, 用于卸载时使用 */ private void processEntityClass(PluginRegistryInfo pluginRegistryInfo, - TypeAliasRegistry typeAliasRegistry, + Map> typeAliases, Set mybatisAliasNames){ List> groupClasses = pluginRegistryInfo.getGroupClasses(PluginEntityAliasesGroup.KEY); if(groupClasses == null || groupClasses.isEmpty()){ return; } - if(typeAliasRegistry == null){ - return; - } for (Class groupClass : groupClasses) { if(groupClass == null){ continue; @@ -130,7 +133,7 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { if(StringUtils.isEmpty(aliasName)){ continue; } - registerAlias(typeAliasRegistry, aliasName, groupClass); + registerAlias(typeAliases, aliasName, groupClass); mybatisAliasNames.add(aliasName); } } @@ -138,10 +141,11 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { /** * 注册自定义配置的 aliasMapping 的别名 * @param pluginRegistryInfo 注册的插件信息 - * @param typeAliasRegistry 别名注册器 + * @param typeAliases mybatis 中内置的别名 Map集合 + * @param mybatisAliasNames 插件中别名存储集合, 用于卸载时使用 */ private void processAliasMapping(PluginRegistryInfo pluginRegistryInfo, - TypeAliasRegistry typeAliasRegistry, + Map> typeAliases, Set mybatisAliasNames){ BasePlugin basePlugin = pluginRegistryInfo.getBasePlugin(); if(basePlugin instanceof SpringBootMybatisConfig){ @@ -151,7 +155,7 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { return; } aliasMapping.forEach((k, v)->{ - registerAlias(typeAliasRegistry, k, v); + registerAlias(typeAliases, k, v); mybatisAliasNames.add(k); }); } @@ -160,46 +164,19 @@ public class PluginMybatisEntityProcessor implements PluginPipeProcessorExtend { /** * 注册别名。 - * @param typeAliasRegistry 别名注册器 + * @param typeAliases mybatis 中内置的别名 Map集合 * @param alias 别名名称 * @param value 别名对应的class类 */ - private void registerAlias(TypeAliasRegistry typeAliasRegistry, + private void registerAlias(Map> typeAliases, String alias, Class value){ if(StringUtils.isEmpty(alias)){ return; } - Map> typeAliases = getTypeAliases(typeAliasRegistry); typeAliases.put(alias, value); } - /** - * - * 通过反射获取别名注册器 TypeAliasRegistry 中存储别名的 typeAliases Map集合。 - * @param typeAliasRegistry 别名注册器 - * @return typeAliases Map集合。 - */ - private Map> getTypeAliases(TypeAliasRegistry typeAliasRegistry) { - if(typeAliasRegistry == null){ - return null; - } - try { - Field field = typeAliasRegistry.getClass().getDeclaredField("typeAliases"); - //设置对象的访问权限,保证对private的属性的访问 - field.setAccessible(true); - Object fieldObject = field.get(typeAliasRegistry); - if(fieldObject instanceof Map){ - return (Map>)fieldObject; - } else { - LOG.warn("Not found TypeAliasRegistry typeAliases"); - return null; - } - } catch (Exception e) { - LOG.error("Found TypeAliasRegistry typeAliases exception. {}", e.getMessage(), e); - return null; - } - } /** * 首字母小写 diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisMapperProcessor.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisMapperProcessor.java index 527a055f16c05dd60d95769993300921f9f0bdaf..11e1e7cef672a16a28c7d9e71335090c77e91d90 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisMapperProcessor.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisMapperProcessor.java @@ -85,7 +85,7 @@ public class PluginMybatisMapperProcessor implements PluginPipeProcessorExtend { if (groupClass == null) { continue; } - BeanNameGenerator beanNameGenerator = new PluginAnnotationBeanNameGenerator(basePlugin.getWrapper().getPluginId()); + BeanNameGenerator beanNameGenerator = new PluginAnnotationBeanNameGenerator(pluginId, basePlugin.getWrapper().getPluginId()); AnnotatedGenericBeanDefinition abd = new AnnotatedGenericBeanDefinition(groupClass); ScopeMetadata scopeMetadata = this.scopeMetadataResolver.resolveScopeMetadata(abd); abd.setScope(scopeMetadata.getScopeName()); diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisXmlProcessor.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisXmlProcessor.java index 0f432098a6c71ddd7f00e1e88cf336f929a79237..f44213acad8b9b7b787fa1e746c9d99708bdcdda 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisXmlProcessor.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/PluginMybatisXmlProcessor.java @@ -68,7 +68,9 @@ public class PluginMybatisXmlProcessor implements PluginPipeProcessorExtend { if(pluginResources == null || pluginResources.isEmpty()){ return; } - mybatisXmlProcess.loadXmlResource(pluginResources, pluginWrapper.getPluginClassLoader()); + mybatisXmlProcess.loadXmlResource( + pluginRegistryInfo.getPluginWrapper().getPluginId(), + pluginResources, pluginWrapper.getPluginClassLoader()); } private void processAliases(PluginRegistryInfo pluginRegistryInfo) { @@ -77,7 +79,7 @@ public class PluginMybatisXmlProcessor implements PluginPipeProcessorExtend { @Override public void unRegistry(PluginRegistryInfo pluginRegistryInfo) throws Exception { - // not thing + mybatisXmlProcess.unRegistry(pluginRegistryInfo.getPluginWrapper().getPluginId()); } } diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/MybatisXmlProcess.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/MybatisXmlProcess.java index a0e72a23ee42d79852408cf440c2c1939e17850b..db62b96fa9937180ccba8a3be2f7f48cfa0a3096 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/MybatisXmlProcess.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/MybatisXmlProcess.java @@ -4,15 +4,12 @@ import org.apache.ibatis.executor.ErrorContext; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.Configuration; import org.apache.ibatis.session.SqlSessionFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; -import java.io.IOException; import java.io.InputStream; -import java.lang.reflect.Field; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; +import java.util.*; import java.util.concurrent.ConcurrentHashMap; /** @@ -23,13 +20,16 @@ import java.util.concurrent.ConcurrentHashMap; */ public class MybatisXmlProcess { + private static final Logger LOGGER = LoggerFactory.getLogger(MybatisXmlProcess.class); + private static MybatisXmlProcess mybatisXmlProcess = null; - private final Map MAPPERS = new ConcurrentHashMap<>(); + private final Map> XML_MAPPER_BUILDERS; private final SqlSessionFactory factory; private MybatisXmlProcess(SqlSessionFactory sqlSessionFactory) { this.factory = sqlSessionFactory; + this.XML_MAPPER_BUILDERS = new ConcurrentHashMap<>(); } /** @@ -58,23 +58,31 @@ public class MybatisXmlProcess { * @param pluginClassLoader pluginClassLoader * @throws Exception Exception */ - public void loadXmlResource(List resources, ClassLoader pluginClassLoader) throws Exception { + public void loadXmlResource(String pluginId, + List resources, + ClassLoader pluginClassLoader) throws Exception { if(resources == null || resources.isEmpty()){ return; } Configuration configuration = factory.getConfiguration(); - // removeConfig(configuration); ClassLoader defaultClassLoader = Resources.getDefaultClassLoader(); try { Resources.setDefaultClassLoader(pluginClassLoader); + List pluginMybatisXmlMapperBuilders = XML_MAPPER_BUILDERS.get(pluginId); + if(pluginMybatisXmlMapperBuilders == null){ + pluginMybatisXmlMapperBuilders = new ArrayList<>(); + XML_MAPPER_BUILDERS.put(pluginId, pluginMybatisXmlMapperBuilders); + } for (Resource resource : resources) { InputStream inputStream = resource.getInputStream(); try { PluginMybatisXmlMapperBuilder xmlMapperBuilder = new PluginMybatisXmlMapperBuilder( inputStream, - configuration, resource.toString(), + configuration, + resource.getFilename(), configuration.getSqlFragments(), pluginClassLoader); + pluginMybatisXmlMapperBuilders.add(xmlMapperBuilder); xmlMapperBuilder.parse(); } finally { if(inputStream != null){ @@ -89,87 +97,19 @@ public class MybatisXmlProcess { } } - /** - * 是否改变 - * @param resources resources - * @return boolean - * @throws IOException IOException - */ - @Deprecated - public boolean isChange(List resources) throws IOException { - if(resources == null || resources.isEmpty()){ - return false; + public void unRegistry(String pluginId){ + List pluginMybatisXmlMapperBuilders = XML_MAPPER_BUILDERS.get(pluginId); + if(pluginMybatisXmlMapperBuilders == null){ + return; } - boolean isChanged = false; - for (Resource resource : resources) { - String key = resource.getURI().toString(); - String value = getModify(resource); - if (!value.equals(MAPPERS.get(key))) { - isChanged = true; - MAPPERS.put(key, value); + for (PluginMybatisXmlMapperBuilder pluginMybatisXmlMapperBuilder : pluginMybatisXmlMapperBuilders) { + try { + pluginMybatisXmlMapperBuilder.unRegistry(); + } catch (Exception e){ + LOGGER.warn("UnRegistry xml type alias cache class error of plugin '{}', error '{}'", + pluginId, e.getMessage()); } } - return isChanged; - } - - - /** - * 移除配置 - * @param configuration configuration - * @throws Exception Exception - */ - @Deprecated - private void removeConfig(Configuration configuration) throws Exception { - Class classConfig = configuration.getClass(); - clearMap(classConfig, configuration, "mappedStatements"); - clearMap(classConfig, configuration, "caches"); - clearMap(classConfig, configuration, "resultMaps"); - clearMap(classConfig, configuration, "parameterMaps"); - clearMap(classConfig, configuration, "keyGenerators"); - clearMap(classConfig, configuration, "sqlFragments"); - clearSet(classConfig, configuration, "loadedResources"); - } - - /** - * 清除Map - * @param classConfig classConfig - * @param configuration configuration - * @param fieldName fieldName - * @throws Exception Exception - */ - @Deprecated - private void clearMap(Class classConfig, Configuration configuration, String fieldName) throws Exception { - Field field = classConfig.getDeclaredField(fieldName); - field.setAccessible(true); - ((Map) field.get(configuration)).clear(); - } - - /** - * 清除Set - * @param classConfig classConfig - * @param configuration configuration - * @param fieldName fieldName - * @throws Exception Exception - */ - private void clearSet(Class classConfig, Configuration configuration, String fieldName) throws Exception { - Field field = classConfig.getDeclaredField(fieldName); - field.setAccessible(true); - ((Set) field.get(configuration)).clear(); - } - - - /** - * 得到修改信息 - * @param resource 资源 - * @return String - * @throws IOException IOException - */ - private String getModify(Resource resource) throws IOException { - return new StringBuilder() - .append(resource.contentLength()) - .append("-") - .append(resource.lastModified()) - .toString(); } } diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/PluginMybatisXmlMapperBuilder.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/PluginMybatisXmlMapperBuilder.java index b1871d7c6db0a7f76d086502f703e0de43cda189..5a478c96652ded12d21462d8af27a1b28de5a0d9 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/PluginMybatisXmlMapperBuilder.java +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/PluginMybatisXmlMapperBuilder.java @@ -6,8 +6,10 @@ import org.apache.ibatis.session.Configuration; import org.apache.ibatis.type.TypeException; import java.io.InputStream; +import java.util.HashSet; import java.util.Locale; import java.util.Map; +import java.util.Set; /** * 插件 xmlMapper 构造者 @@ -17,7 +19,9 @@ import java.util.Map; */ public class PluginMybatisXmlMapperBuilder extends XMLMapperBuilder { + private final ClassLoader pluginClassLoader; + private final Set typeAliasRegistryClassKeys = new HashSet<>(); public PluginMybatisXmlMapperBuilder(InputStream inputStream, Configuration configuration, @@ -43,16 +47,42 @@ public class PluginMybatisXmlMapperBuilder extends XMLMapperBuilder { if (alias == null) { return null; } - Map> typeAliases = typeAliasRegistry.getTypeAliases(); - String key = alias.toLowerCase(Locale.ENGLISH); - if (typeAliases.containsKey(key)) { - return typeAliasRegistry.resolveAlias(alias); - } else { - try { - return (Class) Class.forName(alias, false, pluginClassLoader); - } catch (ClassNotFoundException e) { - throw new TypeException("Could not resolve type alias '" + alias + "'. Cause: " + e, e); + try { + Map> typeAliases = TypeAliasRegistryUtils.getTypeAliases(typeAliasRegistry); + String key = alias.toLowerCase(Locale.ENGLISH); + if (typeAliases.containsKey(key)) { + return typeAliasRegistry.resolveAlias(alias); + } else { + try { + Class aClass = (Class) Class.forName(alias, false, pluginClassLoader); + typeAliasRegistryClassKeys.add(key); + typeAliases.put(key, aClass); + return aClass; + } catch (ClassNotFoundException e) { + throw new TypeException("Could not resolve type alias '" + alias + "'. Cause: " + e, e); + } } + } catch (Exception e) { + e.printStackTrace(); + return null; } } + + + /** + * 卸载时调用,主要是删除typeAliasRegistry中typeAliases所缓存的Class对象 + */ + void unRegistry(){ + try { + Map> typeAliases = TypeAliasRegistryUtils.getTypeAliases(typeAliasRegistry); + for (String typeAliasRegistryClassKey : typeAliasRegistryClassKeys) { + typeAliases.remove(typeAliasRegistryClassKey); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + + } \ No newline at end of file diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/TypeAliasRegistryUtils.java b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/TypeAliasRegistryUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..bb994023db91d8e013dda666933ef103547c20c8 --- /dev/null +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-mybatis/src/main/java/com/gitee/starblues/extension/mybatis/utils/TypeAliasRegistryUtils.java @@ -0,0 +1,49 @@ +package com.gitee.starblues.extension.mybatis.utils; + +import org.apache.ibatis.type.TypeAliasRegistry; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.lang.reflect.Field; +import java.util.Map; + +/** + * mybatis 别名工具类 + * + * @author zhangzhuo + * @version 1.0 + */ +public class TypeAliasRegistryUtils { + + private final static Logger LOG = LoggerFactory.getLogger(TypeAliasRegistryUtils.class); + + private TypeAliasRegistryUtils(){ + + } + + + /** + * + * 通过反射获取别名注册器 TypeAliasRegistry 中存储别名的 typeAliases Map集合。 + * @param typeAliasRegistry 别名注册器 + * @return typeAliases Map集合。 + * @throws Exception 获取不到异常 + */ + public static Map> getTypeAliases(TypeAliasRegistry typeAliasRegistry) throws Exception { + if(typeAliasRegistry == null){ + throw new Exception("TypeAliasRegistry can not is null"); + } + Field field = typeAliasRegistry.getClass().getDeclaredField("typeAliases"); + //设置对象的访问权限,保证对private的属性的访问 + field.setAccessible(true); + Object fieldObject = field.get(typeAliasRegistry); + if(fieldObject instanceof Map){ + return (Map>)fieldObject; + } else { + LOG.warn("Not found TypeAliasRegistry typeAliases"); + throw new Exception("Not found TypeAliasRegistry typeAliases"); + } + } + + +} diff --git a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-resources/pom.xml b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-resources/pom.xml index ed9286d53521dab6c618edc8ecee51f9f838630f..ecdeefe0f722217d7992c5c7473fdc507eba623c 100644 --- a/springboot-plugin-framework-extension/springboot-plugin-framework-extension-resources/pom.xml +++ b/springboot-plugin-framework-extension/springboot-plugin-framework-extension-resources/pom.xml @@ -13,7 +13,7 @@ com.gitee.starblues springboot-plugin-framework-extension-resources - 2.2.3-RELEASE + 2.2.4-RELEASE jar 插件扩展-通过url读取插件中的静态资源 diff --git a/springboot-plugin-framework/pom.xml b/springboot-plugin-framework/pom.xml index 6269ed48717dc4d19c79c5bdbf28417c1ec9d7c2..a1eebebe2dd0363e85f997c5e7b61e642598356b 100644 --- a/springboot-plugin-framework/pom.xml +++ b/springboot-plugin-framework/pom.xml @@ -13,7 +13,7 @@ com.gitee.starblues springboot-plugin-framework jar - 2.2.3-RELEASE + 2.2.4-RELEASE spring boot 插件式开发集成包 diff --git a/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/SpringBeanRegister.java b/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/SpringBeanRegister.java index 7eec53e946d25039df7525a4b0d5e0a7ea4bec32..70d511ae42097fbb6130393102cce59ed4e426d9 100644 --- a/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/SpringBeanRegister.java +++ b/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/SpringBeanRegister.java @@ -74,7 +74,7 @@ public class SpringBeanRegister { AnnotatedGenericBeanDefinition(aClass); BeanNameGenerator beanNameGenerator = - new PluginAnnotationBeanNameGenerator(suffixName); + new PluginAnnotationBeanNameGenerator(pluginId, suffixName); String beanName = beanNameGenerator.generateBeanName(beanDefinition, applicationContext); if(PluginInfoContainer.existRegisterBeanName((beanName))){ String error = MessageFormat.format("Bean name {0} already exist of {1}", diff --git a/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/process/pipe/bean/name/PluginAnnotationBeanNameGenerator.java b/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/process/pipe/bean/name/PluginAnnotationBeanNameGenerator.java index 700b06b127ceafdfbb79ec780aa2bba17c02f08a..dd4a5ebd42cd21a20d8d3b02bec83739b8a40cad 100644 --- a/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/process/pipe/bean/name/PluginAnnotationBeanNameGenerator.java +++ b/springboot-plugin-framework/src/main/java/com/gitee/starblues/factory/process/pipe/bean/name/PluginAnnotationBeanNameGenerator.java @@ -14,12 +14,22 @@ import org.springframework.util.StringUtils; */ public class PluginAnnotationBeanNameGenerator extends AnnotationBeanNameGenerator { + /** + * 插件id + */ + private final String pluginId; + /** * 后缀名称 */ private final String suffixName; - public PluginAnnotationBeanNameGenerator(String suffixName) { + public PluginAnnotationBeanNameGenerator(String pluginId, String suffixName) { + if(StringUtils.isEmpty(pluginId)){ + this.pluginId = ""; + } else { + this.pluginId = pluginId + "@"; + } if(StringUtils.isEmpty(suffixName)){ this.suffixName = ""; } else { @@ -35,7 +45,7 @@ public class PluginAnnotationBeanNameGenerator extends AnnotationBeanNameGenerat return beanName; } } - return buildDefaultBeanName(definition, registry) + suffixName; + return pluginId + buildDefaultBeanName(definition, registry) + suffixName; } diff --git a/springboot-plugin-framework/src/main/java/com/gitee/starblues/integration/listener/DefaultInitializerListener.java b/springboot-plugin-framework/src/main/java/com/gitee/starblues/integration/listener/DefaultInitializerListener.java index 9c529a40bf6c3cd46bc797a0311fff84be729529..d7641dc1e6621e1d2754921b73a94acb4127c43a 100644 --- a/springboot-plugin-framework/src/main/java/com/gitee/starblues/integration/listener/DefaultInitializerListener.java +++ b/springboot-plugin-framework/src/main/java/com/gitee/starblues/integration/listener/DefaultInitializerListener.java @@ -1,6 +1,5 @@ package com.gitee.starblues.integration.listener; -import com.gitee.starblues.extension.ExtensionFactory; import com.gitee.starblues.extension.ExtensionInitializer; import org.springframework.context.ApplicationContext;