Browse Source

mybatis-plus-solon-plugin 微调示例

noear 6 tháng trước cách đây
mục cha
commit
81936a70d3

+ 11 - 27
mybatis-plus-solon-plugin/src/test/java/demo/Config.java

@@ -4,10 +4,8 @@ import com.baomidou.mybatisplus.core.MybatisConfiguration;
 import com.baomidou.mybatisplus.core.MybatisSqlSessionFactoryBuilder;
 import com.baomidou.mybatisplus.core.config.GlobalConfig;
 import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
-import com.zaxxer.hikari.HikariDataSource;
 import demo.dso.MetaObjectHandlerImpl;
 import demo.dso.MybatisSqlSessionFactoryBuilderImpl;
-import okhttp3.Interceptor;
 import org.apache.ibatis.solon.annotation.Db;
 import org.noear.solon.Solon;
 import org.noear.solon.annotation.Bean;
@@ -18,33 +16,19 @@ import javax.sql.DataSource;
 
 @Configuration
 public class Config {
-    @Bean("db1")
-    public DataSource db1(@Inject("${dataSource.db1}") HikariDataSource hikariDataSource) {
-        return hikariDataSource;
-    }
-
-//    @Bean
-//    public Interceptor plusInterceptor() {
-//        MybatisPlusInterceptor plusInterceptor = new MybatisPlusInterceptor();
-//        plusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
-//        return plusInterceptor;
-//    }
-
     @Bean
-    public void db1_ext(@Db("db1") GlobalConfig globalConfig) {
-        MetaObjectHandler metaObjectHandler = new MetaObjectHandlerImpl();
+    public void db1_cfg(@Db("db1") MybatisConfiguration cfg,
+                        @Db("db1") GlobalConfig globalConfig) {
+        //增加 mybatis-plus 的自带分页插件
+        MybatisPlusInterceptor plusInterceptor = new MybatisPlusInterceptor();
+        plusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
 
-        globalConfig.setMetaObjectHandler(metaObjectHandler);
+        cfg.addInterceptor(plusInterceptor);
     }
 
-    @Bean
-    public void db1_ext2(@Db("db1") MybatisConfiguration config){
-        config.getTypeHandlerRegistry().register("xxx");
-        config.setDefaultEnumTypeHandler(null);
-    }
-
-    @Bean
-    public MybatisSqlSessionFactoryBuilder factoryBuilderNew(){
-        return new MybatisSqlSessionFactoryBuilderImpl();
-    }
+//    @Bean
+//    public MybatisSqlSessionFactoryBuilder factoryBuilderNew(){
+//        return new MybatisSqlSessionFactoryBuilderImpl();
+//    }
 }
+

+ 3 - 4
mybatis-plus-solon-plugin/src/test/resources/app.yml

@@ -2,10 +2,9 @@ server:
     port: 6040
 
 # 配置数据源
-dataSource:
-    db1:
-        # 与数据库名可用保持一致
-        schema: test
+solon.dataSources:
+    db1!:
+        class: "com.zaxxer.hikari.HikariDataSource"
         jdbcUrl: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true
         driverClassName: com.mysql.cj.jdbc.Driver
         username: root