Bläddra i källkod

解决多数据源问题

tianyunperfect 3 år sedan
förälder
incheckning
3521e03433
30 ändrade filer med 2742 tillägg och 304 borttagningar
  1. 0 19
      book-dao/src/main/java/com/book/dao/BookDaoServiceApplication.java
  2. 45 49
      book-dao/src/main/java/com/book/dao/config/PolarDataSourceConfig.java
  3. 0 11
      book-dao/src/main/java/com/book/dao/cps/mapper/test.java
  4. 0 11
      book-dao/src/main/java/com/book/dao/cps/pojo/test.java
  5. 0 11
      book-dao/src/main/java/com/book/dao/palordb/mapper/test.java
  6. 0 11
      book-dao/src/main/java/com/book/dao/palordb/pojo/test.java
  7. 402 0
      book-dao/src/main/java/com/book/dao/polardb/entity/AdUserGroupExtend.java
  8. 204 0
      book-dao/src/main/java/com/book/dao/polardb/mapper/AdUserGroupExtendMapper.java
  9. 1101 0
      book-dao/src/main/java/com/book/dao/polardb/pojo/example/AdUserGroupExtendExample.java
  10. 0 73
      book-dao/src/main/resources/application-dev.yml
  11. 0 52
      book-dao/src/main/resources/application-test.yml
  12. 0 4
      book-dao/src/main/resources/application.yml
  13. 1 1
      book-dao/src/main/resources/mapper/cps/Book2Mapper.xml
  14. 1 1
      book-dao/src/main/resources/mapper/cps/BookCategoryMapper.xml
  15. 1 1
      book-dao/src/main/resources/mapper/cps/BookMapper.xml
  16. 1 1
      book-dao/src/main/resources/mapper/cps/BookshelfRecommandMapper.xml
  17. 1 1
      book-dao/src/main/resources/mapper/cps/ManageBlockMapper.xml
  18. 1 1
      book-dao/src/main/resources/mapper/cps/ManageBlockResource2Mapper.xml
  19. 1 1
      book-dao/src/main/resources/mapper/cps/ManageBlockResourceMapper.xml
  20. 1 1
      book-dao/src/main/resources/mapper/cps/ReturnRecommandMapper.xml
  21. 1 1
      book-dao/src/main/resources/mapper/cps/SearchKeywordMapper.xml
  22. 1 1
      book-dao/src/main/resources/mapper/cps/SmartRecommandMapper.xml
  23. 1 1
      book-dao/src/main/resources/mapper/cps/UserMapper.xml
  24. 0 0
      book-dao/src/main/resources/mapper/cps/test.xml
  25. 770 0
      book-dao/src/main/resources/mapper/polar/AdUserGroupExtendMapper.xml
  26. 0 0
      book-dao/src/main/resources/mapper/polar/test.xml
  27. 135 0
      book-dao/src/main/resources/mybatis-generator-cps.xml
  28. 5 5
      book-dao/src/main/resources/mybatis-generator.xml
  29. 1 0
      book-server/src/main/java/com/book/server/Application.java
  30. 68 47
      book-server/src/main/resources/application-dev.yml

+ 0 - 19
book-dao/src/main/java/com/book/dao/BookDaoServiceApplication.java

@@ -1,19 +0,0 @@
-package com.book.dao;
-
-import org.mybatis.spring.annotation.MapperScan;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.scheduling.annotation.EnableScheduling;
-
-@SpringBootApplication
-
-
-@MapperScan("com.book.dao.*.mapper")
-//@EnableScheduling
-public class BookDaoServiceApplication {
-
-    public static void main(String[] args) {
-        SpringApplication.run(BookDaoServiceApplication.class, args);
-    }
-
-}

+ 45 - 49
book-dao/src/main/java/com/book/dao/config/PolarDataSourceConfig.java

@@ -1,49 +1,45 @@
-package com.book.dao.config;
-
-import org.apache.ibatis.session.SqlSessionFactory;
-import org.mybatis.spring.SqlSessionFactoryBean;
-import org.mybatis.spring.SqlSessionTemplate;
-import org.mybatis.spring.annotation.MapperScan;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.boot.jdbc.DataSourceBuilder;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
-import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
-import org.springframework.jdbc.datasource.DataSourceTransactionManager;
-
-import javax.sql.DataSource;
-
-@Configuration
-@MapperScan(basePackages = "com.book.dao.palordb.mapper", sqlSessionTemplateRef  = "mainSqlSessionTemplate")
-public class PolarDataSourceConfig {
-
-    @Bean(name = "polarDataSource")
-    @ConfigurationProperties(prefix = "spring.datasource.polar")
-    @Primary
-    public DataSource mainDataSource() {
-        return DataSourceBuilder.create().build();
-    }
-
-    @Bean(name = "polarSqlSessionFactory")
-    @Primary
-    public SqlSessionFactory mainSqlSessionFactory(@Qualifier("polarDataSource") DataSource dataSource) throws Exception {
-        SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
-        bean.setDataSource(dataSource);
-         bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/polar/*.xml"));
-       return bean.getObject();
-    }
-
-    @Bean(name = "mainTransactionManager")
-    @Primary
-    public DataSourceTransactionManager mainTransactionManager(@Qualifier("polarDataSource") DataSource dataSource) {
-        return new DataSourceTransactionManager(dataSource);
-    }
-
-    @Bean(name = "mainSqlSessionTemplate")
-    @Primary
-    public SqlSessionTemplate mainSqlSessionTemplate(@Qualifier("polarSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
-        return new SqlSessionTemplate(sqlSessionFactory);
-    }
-}
+package com.book.dao.config;
+
+import org.apache.ibatis.session.SqlSessionFactory;
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.mybatis.spring.SqlSessionTemplate;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.jdbc.DataSourceBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
+import org.springframework.jdbc.datasource.DataSourceTransactionManager;
+
+import javax.sql.DataSource;
+
+@Configuration
+@MapperScan(basePackages = "com.book.dao.polardb.mapper", sqlSessionTemplateRef  = "mainSqlSessionTemplate")
+public class PolarDataSourceConfig {
+
+    @Bean(name = "polarDataSource")
+    @ConfigurationProperties(prefix = "spring.datasource.polar")
+    public DataSource mainDataSource() {
+        return DataSourceBuilder.create().build();
+    }
+
+    @Bean(name = "polarSqlSessionFactory")
+    public SqlSessionFactory mainSqlSessionFactory(@Qualifier("polarDataSource") DataSource dataSource) throws Exception {
+        SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
+        bean.setDataSource(dataSource);
+         bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/polar/*.xml"));
+       return bean.getObject();
+    }
+
+    @Bean(name = "mainTransactionManager")
+    public DataSourceTransactionManager mainTransactionManager(@Qualifier("polarDataSource") DataSource dataSource) {
+        return new DataSourceTransactionManager(dataSource);
+    }
+
+    @Bean(name = "mainSqlSessionTemplate")
+    public SqlSessionTemplate mainSqlSessionTemplate(@Qualifier("polarSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
+        return new SqlSessionTemplate(sqlSessionFactory);
+    }
+}

+ 0 - 11
book-dao/src/main/java/com/book/dao/cps/mapper/test.java

@@ -1,11 +0,0 @@
-package com.book.dao.cps.mapper;
-
-/**
- * created in 2021/8/21
- * Project: book-store
- *
- * @author win7
- */
-
-public class test {
-}

+ 0 - 11
book-dao/src/main/java/com/book/dao/cps/pojo/test.java

@@ -1,11 +0,0 @@
-package com.book.dao.cps.pojo;
-
-/**
- * created in 2021/8/21
- * Project: book-store
- *
- * @author win7
- */
-
-public class test {
-}

+ 0 - 11
book-dao/src/main/java/com/book/dao/palordb/mapper/test.java

@@ -1,11 +0,0 @@
-package com.book.dao.palordb.mapper;
-
-/**
- * created in 2021/8/21
- * Project: book-store
- *
- * @author win7
- */
-
-public class test {
-}

+ 0 - 11
book-dao/src/main/java/com/book/dao/palordb/pojo/test.java

@@ -1,11 +0,0 @@
-package com.book.dao.palordb.pojo;
-
-/**
- * created in 2021/8/21
- * Project: book-store
- *
- * @author win7
- */
-
-public class test {
-}

+ 402 - 0
book-dao/src/main/java/com/book/dao/polardb/entity/AdUserGroupExtend.java

@@ -0,0 +1,402 @@
+package com.book.dao.polardb.entity;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Arrays;
+import lombok.Data;
+
+@Data
+public class AdUserGroupExtend implements Serializable {
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.id
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer id;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.user_group_id
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer userGroupId;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.create_by
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer createBy;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.edit_by
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer editBy;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.createtime
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer createtime;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.updatetime
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private Integer updatetime;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column ad_user_group_extend.user_ids
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private String userIds;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public static AdUserGroupExtend.Builder builder() {
+        return new AdUserGroupExtend.Builder();
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public static class Builder {
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private AdUserGroupExtend obj;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder() {
+            this.obj = new AdUserGroupExtend();
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.id
+         *
+         * @param id the value for ad_user_group_extend.id
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder id(Integer id) {
+            obj.setId(id);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.user_group_id
+         *
+         * @param userGroupId the value for ad_user_group_extend.user_group_id
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder userGroupId(Integer userGroupId) {
+            obj.setUserGroupId(userGroupId);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.create_by
+         *
+         * @param createBy the value for ad_user_group_extend.create_by
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder createBy(Integer createBy) {
+            obj.setCreateBy(createBy);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.edit_by
+         *
+         * @param editBy the value for ad_user_group_extend.edit_by
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder editBy(Integer editBy) {
+            obj.setEditBy(editBy);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.createtime
+         *
+         * @param createtime the value for ad_user_group_extend.createtime
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder createtime(Integer createtime) {
+            obj.setCreatetime(createtime);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.updatetime
+         *
+         * @param updatetime the value for ad_user_group_extend.updatetime
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder updatetime(Integer updatetime) {
+            obj.setUpdatetime(updatetime);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column ad_user_group_extend.user_ids
+         *
+         * @param userIds the value for ad_user_group_extend.user_ids
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Builder userIds(String userIds) {
+            obj.setUserIds(userIds);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public AdUserGroupExtend build() {
+            return this.obj;
+        }
+    }
+
+    /**
+     * This enum was generated by MyBatis Generator.
+     * This enum corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public enum Column {
+        id("id", "id", "INTEGER", false),
+        userGroupId("user_group_id", "userGroupId", "INTEGER", false),
+        createBy("create_by", "createBy", "INTEGER", false),
+        editBy("edit_by", "editBy", "INTEGER", false),
+        createtime("createtime", "createtime", "INTEGER", false),
+        updatetime("updatetime", "updatetime", "INTEGER", false),
+        userIds("user_ids", "userIds", "LONGVARCHAR", false);
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private static final String BEGINNING_DELIMITER = "\"";
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private static final String ENDING_DELIMITER = "\"";
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private final String column;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private final boolean isColumnNameDelimited;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private final String javaProperty;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private final String jdbcType;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String value() {
+            return this.column;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String getValue() {
+            return this.column;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String getJavaProperty() {
+            return this.javaProperty;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String getJdbcType() {
+            return this.jdbcType;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        Column(String column, String javaProperty, String jdbcType, boolean isColumnNameDelimited) {
+            this.column = column;
+            this.javaProperty = javaProperty;
+            this.jdbcType = jdbcType;
+            this.isColumnNameDelimited = isColumnNameDelimited;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String desc() {
+            return this.getEscapedColumnName() + " DESC";
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String asc() {
+            return this.getEscapedColumnName() + " ASC";
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public static Column[] excludes(Column ... excludes) {
+            ArrayList<Column> columns = new ArrayList<>(Arrays.asList(Column.values()));
+            if (excludes != null && excludes.length > 0) {
+                columns.removeAll(new ArrayList<>(Arrays.asList(excludes)));
+            }
+            return columns.toArray(new Column[]{});
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public static Column[] all() {
+            return Column.values();
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String getEscapedColumnName() {
+            if (this.isColumnNameDelimited) {
+                return new StringBuilder().append(BEGINNING_DELIMITER).append(this.column).append(ENDING_DELIMITER).toString();
+            } else {
+                return this.column;
+            }
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public String getAliasedEscapedColumnName() {
+            return this.getEscapedColumnName();
+        }
+    }
+}

+ 204 - 0
book-dao/src/main/java/com/book/dao/polardb/mapper/AdUserGroupExtendMapper.java

@@ -0,0 +1,204 @@
+package com.book.dao.polardb.mapper;
+
+import com.book.dao.polardb.entity.AdUserGroupExtend;
+import com.book.dao.polardb.pojo.example.AdUserGroupExtendExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface AdUserGroupExtendMapper {
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    long countByExample(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int deleteByExample(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int deleteByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int insert(AdUserGroupExtend record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int insertSelective(@Param("record") AdUserGroupExtend record, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    AdUserGroupExtend selectOneByExample(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    AdUserGroupExtend selectOneByExampleSelective(@Param("example") AdUserGroupExtendExample example, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    AdUserGroupExtend selectOneByExampleWithBLOBs(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    List<AdUserGroupExtend> selectByExampleSelective(@Param("example") AdUserGroupExtendExample example, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    List<AdUserGroupExtend> selectByExampleWithBLOBs(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    List<AdUserGroupExtend> selectByExample(AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    AdUserGroupExtend selectByPrimaryKeySelective(@Param("id") Integer id, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    AdUserGroupExtend selectByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByExampleSelective(@Param("record") AdUserGroupExtend record, @Param("example") AdUserGroupExtendExample example, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByExampleWithBLOBs(@Param("record") AdUserGroupExtend record, @Param("example") AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByExample(@Param("record") AdUserGroupExtend record, @Param("example") AdUserGroupExtendExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByPrimaryKeySelective(@Param("record") AdUserGroupExtend record, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByPrimaryKeyWithBLOBs(AdUserGroupExtend record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int updateByPrimaryKey(AdUserGroupExtend record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int batchInsert(@Param("list") List<AdUserGroupExtend> list);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int batchInsertSelective(@Param("list") List<AdUserGroupExtend> list, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int upsert(AdUserGroupExtend record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int upsertSelective(@Param("record") AdUserGroupExtend record, @Param("selective") AdUserGroupExtend.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    int upsertWithBLOBs(AdUserGroupExtend record);
+}

+ 1101 - 0
book-dao/src/main/java/com/book/dao/polardb/pojo/example/AdUserGroupExtendExample.java

@@ -0,0 +1,1101 @@
+package com.book.dao.polardb.pojo.example;
+
+import com.book.dao.polardb.entity.AdUserGroupExtend;
+import java.util.ArrayList;
+import java.util.List;
+
+public class AdUserGroupExtendExample {
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected String orderByClause;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected boolean distinct;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected List<Criteria> oredCriteria;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected Integer offset;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected Integer rows;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample orderBy(String orderByClause) {
+        this.setOrderByClause(orderByClause);
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample orderBy(String ... orderByClauses) {
+        StringBuffer sb = new StringBuffer();
+        for (int i = 0; i < orderByClauses.length; i++) {
+            sb.append(orderByClauses[i]);
+            if (i < orderByClauses.length - 1) {
+                sb.append(" , ");
+            }
+        }
+        this.setOrderByClause(sb.toString());
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria(this);
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+        rows = null;
+        offset = null;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void setOffset(Integer offset) {
+        this.offset = offset;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public Integer getOffset() {
+        return this.offset;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public void setRows(Integer rows) {
+        this.rows = rows;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public Integer getRows() {
+        return this.rows;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample limit(Integer rows) {
+        this.rows = rows;
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample limit(Integer offset, Integer rows) {
+        this.offset = offset;
+        this.rows = rows;
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample page(Integer page, Integer pageSize) {
+        this.offset = page * pageSize;
+        this.rows = pageSize;
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public static Criteria newAndCreateCriteria() {
+        AdUserGroupExtendExample example = new AdUserGroupExtendExample();
+        return example.createCriteria();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample when(boolean condition, IExampleWhen then) {
+        if (condition) {
+            then.example(this);
+        }
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public AdUserGroupExtendExample when(boolean condition, IExampleWhen then, IExampleWhen otherwise) {
+        if (condition) {
+            then.example(this);
+        } else {
+            otherwise.example(this);
+        }
+        return this;
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Integer value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Integer value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Integer value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Integer value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Integer value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("id <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Integer> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Integer> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Integer value1, Integer value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdIsNull() {
+            addCriterion("user_group_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdIsNotNull() {
+            addCriterion("user_group_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdEqualTo(Integer value) {
+            addCriterion("user_group_id =", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdNotEqualTo(Integer value) {
+            addCriterion("user_group_id <>", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdGreaterThan(Integer value) {
+            addCriterion("user_group_id >", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("user_group_id >=", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdLessThan(Integer value) {
+            addCriterion("user_group_id <", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdLessThanOrEqualTo(Integer value) {
+            addCriterion("user_group_id <=", value, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("user_group_id <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdIn(List<Integer> values) {
+            addCriterion("user_group_id in", values, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdNotIn(List<Integer> values) {
+            addCriterion("user_group_id not in", values, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdBetween(Integer value1, Integer value2) {
+            addCriterion("user_group_id between", value1, value2, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserGroupIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("user_group_id not between", value1, value2, "userGroupId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByIsNull() {
+            addCriterion("create_by is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByIsNotNull() {
+            addCriterion("create_by is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByEqualTo(Integer value) {
+            addCriterion("create_by =", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByNotEqualTo(Integer value) {
+            addCriterion("create_by <>", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByGreaterThan(Integer value) {
+            addCriterion("create_by >", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByGreaterThanOrEqualTo(Integer value) {
+            addCriterion("create_by >=", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByLessThan(Integer value) {
+            addCriterion("create_by <", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByLessThanOrEqualTo(Integer value) {
+            addCriterion("create_by <=", value, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("create_by <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByIn(List<Integer> values) {
+            addCriterion("create_by in", values, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByNotIn(List<Integer> values) {
+            addCriterion("create_by not in", values, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByBetween(Integer value1, Integer value2) {
+            addCriterion("create_by between", value1, value2, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateByNotBetween(Integer value1, Integer value2) {
+            addCriterion("create_by not between", value1, value2, "createBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByIsNull() {
+            addCriterion("edit_by is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByIsNotNull() {
+            addCriterion("edit_by is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByEqualTo(Integer value) {
+            addCriterion("edit_by =", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByNotEqualTo(Integer value) {
+            addCriterion("edit_by <>", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByGreaterThan(Integer value) {
+            addCriterion("edit_by >", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByGreaterThanOrEqualTo(Integer value) {
+            addCriterion("edit_by >=", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByLessThan(Integer value) {
+            addCriterion("edit_by <", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByLessThanOrEqualTo(Integer value) {
+            addCriterion("edit_by <=", value, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("edit_by <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByIn(List<Integer> values) {
+            addCriterion("edit_by in", values, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByNotIn(List<Integer> values) {
+            addCriterion("edit_by not in", values, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByBetween(Integer value1, Integer value2) {
+            addCriterion("edit_by between", value1, value2, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andEditByNotBetween(Integer value1, Integer value2) {
+            addCriterion("edit_by not between", value1, value2, "editBy");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeIsNull() {
+            addCriterion("createtime is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeIsNotNull() {
+            addCriterion("createtime is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeEqualTo(Integer value) {
+            addCriterion("createtime =", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeNotEqualTo(Integer value) {
+            addCriterion("createtime <>", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeGreaterThan(Integer value) {
+            addCriterion("createtime >", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("createtime >=", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeLessThan(Integer value) {
+            addCriterion("createtime <", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeLessThanOrEqualTo(Integer value) {
+            addCriterion("createtime <=", value, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("createtime <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeIn(List<Integer> values) {
+            addCriterion("createtime in", values, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeNotIn(List<Integer> values) {
+            addCriterion("createtime not in", values, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeBetween(Integer value1, Integer value2) {
+            addCriterion("createtime between", value1, value2, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreatetimeNotBetween(Integer value1, Integer value2) {
+            addCriterion("createtime not between", value1, value2, "createtime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeIsNull() {
+            addCriterion("updatetime is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeIsNotNull() {
+            addCriterion("updatetime is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeEqualTo(Integer value) {
+            addCriterion("updatetime =", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeNotEqualTo(Integer value) {
+            addCriterion("updatetime <>", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeNotEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeGreaterThan(Integer value) {
+            addCriterion("updatetime >", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeGreaterThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("updatetime >=", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeGreaterThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeLessThan(Integer value) {
+            addCriterion("updatetime <", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeLessThanColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeLessThanOrEqualTo(Integer value) {
+            addCriterion("updatetime <=", value, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeLessThanOrEqualToColumn(AdUserGroupExtend.Column column) {
+            addCriterion(new StringBuilder("updatetime <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeIn(List<Integer> values) {
+            addCriterion("updatetime in", values, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeNotIn(List<Integer> values) {
+            addCriterion("updatetime not in", values, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeBetween(Integer value1, Integer value2) {
+            addCriterion("updatetime between", value1, value2, "updatetime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatetimeNotBetween(Integer value1, Integer value2) {
+            addCriterion("updatetime not between", value1, value2, "updatetime");
+            return (Criteria) this;
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated do_not_delete_during_merge Sat Aug 21 18:03:39 CST 2021
+     */
+    public static class Criteria extends GeneratedCriteria {
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        private AdUserGroupExtendExample example;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        protected Criteria(AdUserGroupExtendExample example) {
+            super();
+            this.example = example;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public AdUserGroupExtendExample example() {
+            return this.example;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        @Deprecated
+        public Criteria andIf(boolean ifAdd, ICriteriaAdd add) {
+            if (ifAdd) {
+                add.add(this);
+            }
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Criteria when(boolean condition, ICriteriaWhen then) {
+            if (condition) {
+                then.criteria(this);
+            }
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        public Criteria when(boolean condition, ICriteriaWhen then, ICriteriaWhen otherwise) {
+            if (condition) {
+                then.criteria(this);
+            } else {
+                otherwise.criteria(this);
+            }
+            return this;
+        }
+
+        @Deprecated
+        public interface ICriteriaAdd {
+            /**
+             * This method was generated by MyBatis Generator.
+             * This method corresponds to the database table ad_user_group_extend
+             *
+             * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+             */
+            Criteria add(Criteria add);
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table ad_user_group_extend
+     *
+     * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+     */
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+
+    public interface ICriteriaWhen {
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        void criteria(Criteria criteria);
+    }
+
+    public interface IExampleWhen {
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table ad_user_group_extend
+         *
+         * @mbg.generated Sat Aug 21 18:03:39 CST 2021
+         */
+        void example(com.book.dao.polardb.pojo.example.AdUserGroupExtendExample example);
+    }
+}

+ 0 - 73
book-dao/src/main/resources/application-dev.yml

@@ -1,73 +0,0 @@
-spring:
-  datasource:
-    cps:
-      type: com.alibaba.druid.pool.DruidDataSource
-      driver-class-name: com.mysql.cj.jdbc.Driver
-      url: jdbc:mysql://121.41.100.198:3306/test_cps?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
-      username: root
-      password: root
-      #下面为连接池补充设置
-      druid:
-        initial-size: 5 # 初始化
-        max-active: 5 # 最大
-        min-idle: 5 # 最小
-        max-wait: 6000 # 超时时间
-        time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
-        min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
-        # 检测链接是否有效的query
-        validation-query: SELECT 1 FROM DUAL
-        test-while-idle: true # 检测到链接空闲时,验证是否有效
-        test-on-borrow: false # 申请链接时,不检测
-        test-on-return: false # 返回链接时,不检测
-        pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
-        # 如果上面开启了游标,这里要设置一下大小,例如 50
-        max-pool-prepared-statement-per-connection-size: -1
-        # 统计、监控配置
-        filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
-        # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
-        connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
-        use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
-        stat-view-servlet:
-          enabled: true
-          login-username: tianyun
-          login-password: tianyunperfect
-          allow: # 默认运行所有
-          deny: # 默认即可
-          reset-enable: true
-    polar:
-      type: com.alibaba.druid.pool.DruidDataSource
-      driver-class-name: com.mysql.cj.jdbc.Driver
-      url: jdbc:mysql://121.41.100.198:3306/test_cps?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
-      username: root
-      password: root
-      #下面为连接池补充设置
-      druid:
-        initial-size: 5 # 初始化
-        max-active: 5 # 最大
-        min-idle: 5 # 最小
-        max-wait: 6000 # 超时时间
-        time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
-        min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
-        # 检测链接是否有效的query
-        validation-query: SELECT 1 FROM DUAL
-        test-while-idle: true # 检测到链接空闲时,验证是否有效
-        test-on-borrow: false # 申请链接时,不检测
-        test-on-return: false # 返回链接时,不检测
-        pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
-        # 如果上面开启了游标,这里要设置一下大小,例如 50
-        max-pool-prepared-statement-per-connection-size: -1
-        # 统计、监控配置
-        filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
-        # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
-        connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
-        use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
-        stat-view-servlet:
-          enabled: true
-          login-username: tianyun
-          login-password: tianyunperfect
-          allow: # 默认运行所有
-          deny: # 默认即可
-          reset-enable: true
-
-
-

+ 0 - 52
book-dao/src/main/resources/application-test.yml

@@ -1,52 +0,0 @@
-server:
-  port: 9999
-
-spring:
-  datasource:
-    type: com.alibaba.druid.pool.DruidDataSource
-    driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://www.tianyunperfect.cn:3306/test_cps?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
-    username: test_cps
-    password: xKysDECnJLXkMYdJ
-    #下面为连接池补充设置
-    druid:
-      initial-size: 5 # 初始化
-      max-active: 5 # 最大
-      min-idle: 5 # 最小
-      max-wait: 6000 # 超时时间
-      time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
-      min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
-      # 检测链接是否有效的query
-      validation-query: SELECT 1 FROM DUAL
-      test-while-idle: true # 检测到链接空闲时,验证是否有效
-      test-on-borrow: false # 申请链接时,不检测
-      test-on-return: false # 返回链接时,不检测
-      pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
-      # 如果上面开启了游标,这里要设置一下大小,例如 50
-      max-pool-prepared-statement-per-connection-size: -1
-      # 统计、监控配置
-      filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
-      # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
-      connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
-      use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
-      stat-view-servlet:
-        enabled: true
-        login-username: tianyun
-        login-password: tianyunperfect
-        allow: # 默认运行所有
-        deny: # 默认即可
-        reset-enable: true
-
-
-mybatis:
-  type-aliases-package: com.book.server.entity
-  mapper-locations: classpath:mapper/*Mapper.xml
-
-
-# 设置debug模式下打印mysql
-logging:
-  level:
-    com:
-      book:
-        server:
-          mapper: debug

+ 0 - 4
book-dao/src/main/resources/application.yml

@@ -1,4 +0,0 @@
-spring:
-  # 环境 dev:开发环境|test:测试环境|prod:生产环境
-  profiles:
-    active: dev #激活的配置文件

+ 1 - 1
book-dao/src/main/resources/mapper/cps/Book2Mapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.BookMapper2">
+<mapper namespace="com.book.dao.cps.mapper.BookMapper2">
     <resultMap id="BaseResultMap" type="com.book.dao.VO.BookRes">
         <!--
           WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/BookCategoryMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.BookCategoryMapper">
+<mapper namespace="com.book.dao.cps.mapper.BookCategoryMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.BookCategory">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/BookMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.BookMapper">
+<mapper namespace="com.book.dao.cps.mapper.BookMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.Book">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/BookshelfRecommandMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.BookshelfRecommandMapper">
+<mapper namespace="com.book.dao.cps.mapper.BookshelfRecommandMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.BookshelfRecommand">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/ManageBlockMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.ManageBlockMapper">
+<mapper namespace="com.book.dao.cps.mapper.ManageBlockMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.ManageBlock">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/ManageBlockResource2Mapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.ManageBlockResource2Mapper">
+<mapper namespace="com.book.dao.cps.mapper.ManageBlockResource2Mapper">
   <resultMap id="BaseResultMap" type="com.book.dao.VO.ManageBlockResourceRes">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/ManageBlockResourceMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.ManageBlockResourceMapper">
+<mapper namespace="com.book.dao.cps.mapper.ManageBlockResourceMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.ManageBlockResource">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/ReturnRecommandMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.ReturnRecommandMapper">
+<mapper namespace="com.book.dao.cps.mapper.ReturnRecommandMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.ReturnRecommand">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/SearchKeywordMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.SearchKeywordMapper">
+<mapper namespace="com.book.dao.cps.mapper.SearchKeywordMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.SearchKeyword">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/SmartRecommandMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.SmartRecommandMapper">
+<mapper namespace="com.book.dao.cps.mapper.SmartRecommandMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.SmartRecommand">
     <!--
       WARNING - @mbg.generated

+ 1 - 1
book-dao/src/main/resources/mapper/cps/UserMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.book.server.dao.mapper.UserMapper">
+<mapper namespace="com.book.dao.cps.mapper.UserMapper">
   <resultMap id="BaseResultMap" type="com.book.dao.cps.pojo.User">
     <!--
       WARNING - @mbg.generated

+ 0 - 0
book-dao/src/main/resources/mapper/cps/test.xml


+ 770 - 0
book-dao/src/main/resources/mapper/polar/AdUserGroupExtendMapper.xml

@@ -0,0 +1,770 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.book.dao.polardb.mapper.AdUserGroupExtendMapper">
+  <resultMap id="BaseResultMap" type="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="user_group_id" jdbcType="INTEGER" property="userGroupId" />
+    <result column="create_by" jdbcType="INTEGER" property="createBy" />
+    <result column="edit_by" jdbcType="INTEGER" property="editBy" />
+    <result column="createtime" jdbcType="INTEGER" property="createtime" />
+    <result column="updatetime" jdbcType="INTEGER" property="updatetime" />
+  </resultMap>
+  <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    <result column="user_ids" jdbcType="LONGVARCHAR" property="userIds" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    id, user_group_id, create_by, edit_by, createtime, updatetime
+  </sql>
+  <sql id="Blob_Column_List">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    user_ids
+  </sql>
+  <select id="selectByExampleWithBLOBs" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="rows != null">
+      <if test="offset != null">
+        limit ${offset}, ${rows}
+      </if>
+      <if test="offset == null">
+        limit ${rows}
+      </if>
+    </if>
+  </select>
+  <select id="selectByExample" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="rows != null">
+      <if test="offset != null">
+        limit ${offset}, ${rows}
+      </if>
+      <if test="offset == null">
+        limit ${rows}
+      </if>
+    </if>
+  </select>
+  <select id="selectByExampleSelective" parameterType="map" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <if test="example != null and example.distinct">
+      distinct
+    </if>
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.aliasedEscapedColumnName}
+        </foreach>
+      </when>
+      <otherwise>
+        <include refid="Base_Column_List" />
+        ,
+        <include refid="Blob_Column_List" />
+      </otherwise>
+    </choose>
+    from ad_user_group_extend
+    <if test="example != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+    <if test="example != null and example.orderByClause != null">
+      order by ${example.orderByClause}
+    </if>
+    <if test="example != null and example.rows != null">
+      <if test="example.offset != null">
+        limit ${example.offset}, ${example.rows}
+      </if>
+      <if test="example.offset == null">
+        limit ${example.rows}
+      </if>
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select 
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ad_user_group_extend
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <select id="selectByPrimaryKeySelective" parameterType="map" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.aliasedEscapedColumnName}
+        </foreach>
+      </when>
+      <otherwise>
+        <include refid="Base_Column_List" />
+        ,
+        <include refid="Blob_Column_List" />
+      </otherwise>
+    </choose>
+    from ad_user_group_extend
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    delete from ad_user_group_extend
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    delete from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend (id, user_group_id, create_by, 
+      edit_by, createtime, updatetime, 
+      user_ids)
+    values (#{id,jdbcType=INTEGER}, #{userGroupId,jdbcType=INTEGER}, #{createBy,jdbcType=INTEGER}, 
+      #{editBy,jdbcType=INTEGER}, #{createtime,jdbcType=INTEGER}, #{updatetime,jdbcType=INTEGER}, 
+      #{userIds,jdbcType=LONGVARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach close=")" collection="selective" item="column" open="(" separator=",">
+          ${column.escapedColumnName}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+          <if test="record.id != null">
+            id,
+          </if>
+          <if test="record.userGroupId != null">
+            user_group_id,
+          </if>
+          <if test="record.createBy != null">
+            create_by,
+          </if>
+          <if test="record.editBy != null">
+            edit_by,
+          </if>
+          <if test="record.createtime != null">
+            createtime,
+          </if>
+          <if test="record.updatetime != null">
+            updatetime,
+          </if>
+          <if test="record.userIds != null">
+            user_ids,
+          </if>
+        </trim>
+        <trim prefix="(" suffix=")" suffixOverrides="," />
+      </otherwise>
+    </choose>
+    values
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach close=")" collection="selective" item="column" open="(" separator=",">
+          #{record.${column.javaProperty},jdbcType=${column.jdbcType}}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+          <if test="record.id != null">
+            #{record.id,jdbcType=INTEGER},
+          </if>
+          <if test="record.userGroupId != null">
+            #{record.userGroupId,jdbcType=INTEGER},
+          </if>
+          <if test="record.createBy != null">
+            #{record.createBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.editBy != null">
+            #{record.editBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.createtime != null">
+            #{record.createtime,jdbcType=INTEGER},
+          </if>
+          <if test="record.updatetime != null">
+            #{record.updatetime,jdbcType=INTEGER},
+          </if>
+          <if test="record.userIds != null">
+            #{record.userIds,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+  </insert>
+  <select id="countByExample" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample" resultType="java.lang.Long">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select count(*) from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    SET
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.escapedColumnName} = #{record.${column.javaProperty},jdbcType=${column.jdbcType}}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim suffixOverrides=",">
+          <if test="record.id != null">
+            id = #{record.id,jdbcType=INTEGER},
+          </if>
+          <if test="record.userGroupId != null">
+            user_group_id = #{record.userGroupId,jdbcType=INTEGER},
+          </if>
+          <if test="record.createBy != null">
+            create_by = #{record.createBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.editBy != null">
+            edit_by = #{record.editBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.createtime != null">
+            createtime = #{record.createtime,jdbcType=INTEGER},
+          </if>
+          <if test="record.updatetime != null">
+            updatetime = #{record.updatetime,jdbcType=INTEGER},
+          </if>
+          <if test="record.userIds != null">
+            user_ids = #{record.userIds,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExampleWithBLOBs" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    set id = #{record.id,jdbcType=INTEGER},
+      user_group_id = #{record.userGroupId,jdbcType=INTEGER},
+      create_by = #{record.createBy,jdbcType=INTEGER},
+      edit_by = #{record.editBy,jdbcType=INTEGER},
+      createtime = #{record.createtime,jdbcType=INTEGER},
+      updatetime = #{record.updatetime,jdbcType=INTEGER},
+      user_ids = #{record.userIds,jdbcType=LONGVARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    set id = #{record.id,jdbcType=INTEGER},
+      user_group_id = #{record.userGroupId,jdbcType=INTEGER},
+      create_by = #{record.createBy,jdbcType=INTEGER},
+      edit_by = #{record.editBy,jdbcType=INTEGER},
+      createtime = #{record.createtime,jdbcType=INTEGER},
+      updatetime = #{record.updatetime,jdbcType=INTEGER}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    SET
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.escapedColumnName} = #{record.${column.javaProperty},jdbcType=${column.jdbcType}}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim suffixOverrides=",">
+          <if test="record.userGroupId != null">
+            user_group_id = #{record.userGroupId,jdbcType=INTEGER},
+          </if>
+          <if test="record.createBy != null">
+            create_by = #{record.createBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.editBy != null">
+            edit_by = #{record.editBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.createtime != null">
+            createtime = #{record.createtime,jdbcType=INTEGER},
+          </if>
+          <if test="record.updatetime != null">
+            updatetime = #{record.updatetime,jdbcType=INTEGER},
+          </if>
+          <if test="record.userIds != null">
+            user_ids = #{record.userIds,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+    where id = #{record.id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKeyWithBLOBs" parameterType="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    set user_group_id = #{userGroupId,jdbcType=INTEGER},
+      create_by = #{createBy,jdbcType=INTEGER},
+      edit_by = #{editBy,jdbcType=INTEGER},
+      createtime = #{createtime,jdbcType=INTEGER},
+      updatetime = #{updatetime,jdbcType=INTEGER},
+      user_ids = #{userIds,jdbcType=LONGVARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    update ad_user_group_extend
+    set user_group_id = #{userGroupId,jdbcType=INTEGER},
+      create_by = #{createBy,jdbcType=INTEGER},
+      edit_by = #{editBy,jdbcType=INTEGER},
+      createtime = #{createtime,jdbcType=INTEGER},
+      updatetime = #{updatetime,jdbcType=INTEGER}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <select id="selectOneByExample" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <include refid="Base_Column_List" />
+    from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    limit 1
+  </select>
+  <select id="selectOneByExampleWithBLOBs" parameterType="com.book.dao.polardb.pojo.example.AdUserGroupExtendExample" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ad_user_group_extend
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    limit 1
+  </select>
+  <select id="selectOneByExampleSelective" parameterType="map" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    select
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.aliasedEscapedColumnName}
+        </foreach>
+      </when>
+      <otherwise>
+        <include refid="Base_Column_List" />
+        ,
+        <include refid="Blob_Column_List" />
+      </otherwise>
+    </choose>
+    from ad_user_group_extend
+    <if test="example != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+    <if test="example != null and example.orderByClause != null">
+      order by ${example.orderByClause}
+    </if>
+    limit 1
+  </select>
+  <insert id="batchInsert" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend
+    (id, user_group_id, create_by, edit_by, createtime, updatetime, user_ids)
+    values
+    <foreach collection="list" item="item" separator=",">
+      (#{item.id,jdbcType=INTEGER}, #{item.userGroupId,jdbcType=INTEGER}, #{item.createBy,jdbcType=INTEGER}, 
+        #{item.editBy,jdbcType=INTEGER}, #{item.createtime,jdbcType=INTEGER}, #{item.updatetime,jdbcType=INTEGER}, 
+        #{item.userIds,jdbcType=LONGVARCHAR})
+    </foreach>
+  </insert>
+  <insert id="batchInsertSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend (
+    <foreach collection="selective" item="column" separator=",">
+      ${column.escapedColumnName}
+    </foreach>
+    )
+    values
+    <foreach collection="list" item="item" separator=",">
+      (
+      <foreach collection="selective" item="column" separator=",">
+        <if test="'id'.toString() == column.value">
+          #{item.id,jdbcType=INTEGER}
+        </if>
+        <if test="'user_group_id'.toString() == column.value">
+          #{item.userGroupId,jdbcType=INTEGER}
+        </if>
+        <if test="'create_by'.toString() == column.value">
+          #{item.createBy,jdbcType=INTEGER}
+        </if>
+        <if test="'edit_by'.toString() == column.value">
+          #{item.editBy,jdbcType=INTEGER}
+        </if>
+        <if test="'createtime'.toString() == column.value">
+          #{item.createtime,jdbcType=INTEGER}
+        </if>
+        <if test="'updatetime'.toString() == column.value">
+          #{item.updatetime,jdbcType=INTEGER}
+        </if>
+        <if test="'user_ids'.toString() == column.value">
+          #{item.userIds,jdbcType=LONGVARCHAR}
+        </if>
+      </foreach>
+      )
+    </foreach>
+  </insert>
+  <insert id="upsertSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach close=")" collection="selective" item="column" open="(" separator=",">
+          ${column.escapedColumnName}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+          <if test="record.id != null">
+            id,
+          </if>
+          <if test="record.userGroupId != null">
+            user_group_id,
+          </if>
+          <if test="record.createBy != null">
+            create_by,
+          </if>
+          <if test="record.editBy != null">
+            edit_by,
+          </if>
+          <if test="record.createtime != null">
+            createtime,
+          </if>
+          <if test="record.updatetime != null">
+            updatetime,
+          </if>
+          <if test="record.userIds != null">
+            user_ids,
+          </if>
+        </trim>
+        <trim prefix="(" suffix=")" suffixOverrides="," />
+      </otherwise>
+    </choose>
+    values
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach close=")" collection="selective" item="column" open="(" separator=",">
+          #{record.${column.javaProperty},jdbcType=${column.jdbcType}}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+          <if test="record.id != null">
+            #{record.id,jdbcType=INTEGER},
+          </if>
+          <if test="record.userGroupId != null">
+            #{record.userGroupId,jdbcType=INTEGER},
+          </if>
+          <if test="record.createBy != null">
+            #{record.createBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.editBy != null">
+            #{record.editBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.createtime != null">
+            #{record.createtime,jdbcType=INTEGER},
+          </if>
+          <if test="record.updatetime != null">
+            #{record.updatetime,jdbcType=INTEGER},
+          </if>
+          <if test="record.userIds != null">
+            #{record.userIds,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+    on duplicate key update 
+    <choose>
+      <when test="selective != null and selective.length > 0">
+        <foreach collection="selective" item="column" separator=",">
+          ${column.escapedColumnName} = #{record.${column.javaProperty},jdbcType=${column.jdbcType}}
+        </foreach>
+      </when>
+      <otherwise>
+        <trim suffixOverrides=",">
+          <if test="record.id != null">
+            id = #{record.id,jdbcType=INTEGER},
+          </if>
+          <if test="record.userGroupId != null">
+            user_group_id = #{record.userGroupId,jdbcType=INTEGER},
+          </if>
+          <if test="record.createBy != null">
+            create_by = #{record.createBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.editBy != null">
+            edit_by = #{record.editBy,jdbcType=INTEGER},
+          </if>
+          <if test="record.createtime != null">
+            createtime = #{record.createtime,jdbcType=INTEGER},
+          </if>
+          <if test="record.updatetime != null">
+            updatetime = #{record.updatetime,jdbcType=INTEGER},
+          </if>
+          <if test="record.userIds != null">
+            user_ids = #{record.userIds,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+  </insert>
+  <insert id="upsert" parameterType="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend
+    (id, user_group_id, create_by, edit_by, createtime, updatetime)
+    values
+    (#{id,jdbcType=INTEGER}, #{userGroupId,jdbcType=INTEGER}, #{createBy,jdbcType=INTEGER}, 
+      #{editBy,jdbcType=INTEGER}, #{createtime,jdbcType=INTEGER}, #{updatetime,jdbcType=INTEGER}
+      )
+    on duplicate key update 
+    id = #{id,jdbcType=INTEGER}, 
+    user_group_id = #{userGroupId,jdbcType=INTEGER}, 
+    create_by = #{createBy,jdbcType=INTEGER}, 
+    edit_by = #{editBy,jdbcType=INTEGER}, 
+    createtime = #{createtime,jdbcType=INTEGER}, 
+    updatetime = #{updatetime,jdbcType=INTEGER}
+  </insert>
+  <insert id="upsertWithBLOBs" parameterType="com.book.dao.polardb.entity.AdUserGroupExtend">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 18:03:39 CST 2021.
+    -->
+    insert into ad_user_group_extend
+    (id, user_group_id, create_by, edit_by, createtime, updatetime, user_ids)
+    values
+    (#{id,jdbcType=INTEGER}, #{userGroupId,jdbcType=INTEGER}, #{createBy,jdbcType=INTEGER}, 
+      #{editBy,jdbcType=INTEGER}, #{createtime,jdbcType=INTEGER}, #{updatetime,jdbcType=INTEGER}, 
+      #{userIds,jdbcType=LONGVARCHAR})
+    on duplicate key update 
+    id = #{id,jdbcType=INTEGER}, 
+    user_group_id = #{userGroupId,jdbcType=INTEGER}, 
+    create_by = #{createBy,jdbcType=INTEGER}, 
+    edit_by = #{editBy,jdbcType=INTEGER}, 
+    createtime = #{createtime,jdbcType=INTEGER}, 
+    updatetime = #{updatetime,jdbcType=INTEGER}, 
+    user_ids = #{userIds,jdbcType=LONGVARCHAR}
+  </insert>
+</mapper>

+ 0 - 0
book-dao/src/main/resources/mapper/polar/test.xml


+ 135 - 0
book-dao/src/main/resources/mybatis-generator-cps.xml

@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE generatorConfiguration
+        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
+        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
+
+<generatorConfiguration>
+
+    <context id="MySql" defaultModelType="flat">
+
+        <!--搜索:need to change-->
+
+        <!-- 查询单条数据插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.SelectOneByExamplePlugin"/>
+
+        <!-- MySQL分页插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.LimitPlugin">
+            <!-- 通过配置startPage影响Example中的page方法开始分页的页码,默认分页从0开始 -->
+            <property name="startPage" value="0"/>
+        </plugin>
+
+        <!-- Example Criteria 增强插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.ExampleEnhancedPlugin">
+            <!-- 是否支持已经过时的andIf方法(推荐使用when代替),默认支持 -->
+            <property name="enableAndIf" value="true"/>
+        </plugin>
+
+        <!-- Example 目标包修改插件 need to change-->
+        <plugin type="com.itfsw.mybatis.generator.plugins.ExampleTargetPlugin">
+            <!-- 修改Example类生成到目标包下 -->
+            <property name="targetPackage" value="com.book.dao.cps.pojo.example"/>
+        </plugin>
+
+        <!-- 数据Model属性对应Column获取插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.ModelColumnPlugin"/>
+
+        <!-- 数据Model链式构建插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.ModelBuilderPlugin"/>
+
+        <!-- 批量插入插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.BatchInsertPlugin">
+            <!--
+            开启后可以实现官方插件根据属性是否为空决定是否插入该字段功能
+            !需开启allowMultiQueries=true多条sql提交操作,所以不建议使用!插件默认不开启
+            -->
+            <property name="allowMultiQueries" value="false"/>
+        </plugin>
+
+        <!-- 存在即更新插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.UpsertPlugin">
+            <!--
+            支持upsertByExample,upsertByExampleSelective操作
+            !需开启allowMultiQueries=true多条sql提交操作,所以不建议使用!插件默认不开启
+            -->
+            <property name="allowMultiQueries" value="false"/>
+            <!--
+            开启批量功能,支持batchUpsert,batchUpsertWithBLOBs,batchUpserSelective
+            !这几个方法中无法支持IncrementsPlugin的方法!插件默认不开启
+            -->
+            <property name="allowBatchUpsert" value="fasle"/>
+        </plugin>
+
+        <!-- 增量插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.IncrementPlugin"/>
+
+        <!--<table tableName="tb">-->
+        <!--&lt;!&ndash; 配置需要进行增量操作的列名称(英文半角逗号分隔) &ndash;&gt;-->
+        <!--<property name="incrementColumns" value="field1,field2"/>-->
+        <!--</table>-->
+
+        <!-- 查询结果选择性返回插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.SelectSelectivePlugin"/>
+
+        <!-- Selective选择插入更新增强插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.SelectiveEnhancedPlugin"/>
+
+        <!-- Lombok插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.LombokPlugin">
+            <!-- @Data 默认开启,同时插件会对子类自动附加@EqualsAndHashCode(callSuper = true),@ToString(callSuper = true) -->
+            <property name="@Data" value="true"/>
+            <!-- @Builder 必须在 Lombok 版本 >= 1.18.2 的情况下开启,对存在继承关系的类自动替换成@SuperBuilder -->
+            <property name="@Builder" value="false"/>
+            <!-- @NoArgsConstructor 和 @AllArgsConstructor 使用规则和Lombok一致 -->
+            <property name="@AllArgsConstructor" value="false"/>
+            <property name="@NoArgsConstructor" value="false"/>
+            <!-- @Getter、@Setter、@Accessors 等使用规则参见官方文档 -->
+            <property name="@Accessors(chain = true)" value="false"/>
+            <!-- 临时解决IDEA工具对@SuperBuilder的不支持问题,开启后(默认未开启)插件在遇到@SuperBuilder注解时会调用ModelBuilderPlugin来生成相应的builder代码 -->
+            <property name="supportSuperBuilderForIdea" value="false"/>
+        </plugin>
+
+        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
+
+        <!-- Mapper注解插件 -->
+        <plugin type="com.itfsw.mybatis.generator.plugins.MapperAnnotationPlugin">
+            <!-- @Mapper 默认开启 -->
+            <property name="@Mapper" value="true"/>
+            <!-- @Repository 默认关闭,开启后解决IDEA工具@Autowired报错 -->
+            <property name="@Repository" value="true"/>
+        </plugin>
+
+        <!--<plugin type="org.mybatis.generator.plugins.ToStringPlugin" />-->
+
+        <!--数据库连接配置 need to change-->
+        <jdbcConnection
+                driverClass="com.mysql.cj.jdbc.Driver"
+                connectionURL="jdbc:mysql://121.41.100.198:3306/test_cps?nullCatalogMeansCurrent=true&amp;serverTimezone=UTC"
+                userId="root"
+                password="root"/>
+
+        <!--指定自动生成的 POJO置于哪个包下 need to change -->
+        <javaModelGenerator targetPackage="com.book.server.dao.entity"
+                            targetProject="src/main/java"/>
+
+        <!--指定自动生成的 mapper.xml置于哪个包下 -->
+        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"/>
+
+        <!--指定自动生成的 DAO接口置于哪个包下 need to change-->
+        <javaClientGenerator targetPackage="com.book.server.dao.mapper"
+                             targetProject="src/main/java" type="XMLMAPPER"/>
+
+        <!--指定数据表名,可以使用_和%通配符,可以配置generatedKey,会返回insert之后的id-->
+<!--        <table tableName="book"></table>-->
+<!--        <table tableName="manage_block"></table>-->
+<!--        <table tableName="manage_block_resource"></table>-->
+<!--        <table tableName="book_category"></table>-->
+<!--        <table tableName="user"></table>-->
+<!--        <table tableName="search_keyword"></table>-->
+<!--        <table tableName="return_recommand"></table>-->
+<!--        <table tableName="bookshelf_recommand"></table>-->
+<!--        <table tableName="smart_recommand"></table>-->
+        <table tableName="config"></table>
+
+    </context>
+
+</generatorConfiguration>

+ 5 - 5
book-dao/src/main/resources/mybatis-generator.xml

@@ -27,7 +27,7 @@
         <!-- Example 目标包修改插件 need to change-->
         <plugin type="com.itfsw.mybatis.generator.plugins.ExampleTargetPlugin">
             <!-- 修改Example类生成到目标包下 -->
-            <property name="targetPackage" value="com.book.dao.cps.pojo.example"/>
+            <property name="targetPackage" value="com.book.dao.polardb.pojo.example"/>
         </plugin>
 
         <!-- 数据Model属性对应Column获取插件 -->
@@ -103,19 +103,19 @@
         <!--数据库连接配置 need to change-->
         <jdbcConnection
                 driverClass="com.mysql.cj.jdbc.Driver"
-                connectionURL="jdbc:mysql://121.41.100.198:3306/test_cps?nullCatalogMeansCurrent=true&amp;serverTimezone=UTC"
+                connectionURL="jdbc:mysql://121.41.100.198:3306/polardb?nullCatalogMeansCurrent=true&amp;serverTimezone=UTC"
                 userId="root"
                 password="root"/>
 
         <!--指定自动生成的 POJO置于哪个包下 need to change -->
-        <javaModelGenerator targetPackage="com.book.server.dao.entity"
+        <javaModelGenerator targetPackage="com.book.dao.polardb.entity"
                             targetProject="src/main/java"/>
 
         <!--指定自动生成的 mapper.xml置于哪个包下 -->
         <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"/>
 
         <!--指定自动生成的 DAO接口置于哪个包下 need to change-->
-        <javaClientGenerator targetPackage="com.book.server.dao.mapper"
+        <javaClientGenerator targetPackage="com.book.dao.polardb.mapper"
                              targetProject="src/main/java" type="XMLMAPPER"/>
 
         <!--指定数据表名,可以使用_和%通配符,可以配置generatedKey,会返回insert之后的id-->
@@ -128,7 +128,7 @@
 <!--        <table tableName="return_recommand"></table>-->
 <!--        <table tableName="bookshelf_recommand"></table>-->
 <!--        <table tableName="smart_recommand"></table>-->
-        <table tableName="config"></table>
+        <table tableName="ad_user_group_extend"></table>
 
     </context>
 

+ 1 - 0
book-server/src/main/java/com/book/server/Application.java

@@ -11,6 +11,7 @@ import org.springframework.context.annotation.ComponentScan;
 @SpringBootApplication
 @EnableCaching
 @Slf4j
+@ComponentScan(basePackages = {"com.book.dao","com.book.server"})
 public class Application implements CommandLineRunner {
     public static void main(String[] args) {
         //日志异步

+ 68 - 47
book-server/src/main/resources/application-dev.yml

@@ -3,50 +3,71 @@ server:
 
 spring:
   datasource:
-    type: com.alibaba.druid.pool.DruidDataSource
-    driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://121.41.100.198:3306/test_cps?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
-    username: root
-    password: root
-    #下面为连接池补充设置
-    druid:
-      initial-size: 5 # 初始化
-      max-active: 5 # 最大
-      min-idle: 5 # 最小
-      max-wait: 6000 # 超时时间
-      time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
-      min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
-      # 检测链接是否有效的query
-      validation-query: SELECT 1 FROM DUAL
-      test-while-idle: true # 检测到链接空闲时,验证是否有效
-      test-on-borrow: false # 申请链接时,不检测
-      test-on-return: false # 返回链接时,不检测
-      pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
-      # 如果上面开启了游标,这里要设置一下大小,例如 50
-      max-pool-prepared-statement-per-connection-size: -1
-      # 统计、监控配置
-      filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
-      # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
-      connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
-      use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
-      stat-view-servlet:
-        enabled: true
-        login-username: tianyun
-        login-password: tianyunperfect
-        allow: # 默认运行所有
-        deny: # 默认即可
-        reset-enable: true
-
-
-mybatis:
-  type-aliases-package: com.book.server.entity
-  mapper-locations: classpath:mapper/*Mapper.xml
-
-
-# 设置debug模式下打印mysql
-logging:
-  level:
-    com:
-      book:
-        server:
-          mapper: debug
+    cps:
+      type: com.alibaba.druid.pool.DruidDataSource
+      driver-class-name: com.mysql.cj.jdbc.Driver
+      jdbc-url: jdbc:mysql://121.41.100.198:3306/test_cps?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
+      username: root
+      password: root
+      #下面为连接池补充设置
+      druid:
+        initial-size: 5 # 初始化
+        max-active: 5 # 最大
+        min-idle: 5 # 最小
+        max-wait: 6000 # 超时时间
+        time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
+        min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
+        # 检测链接是否有效的query
+        validation-query: SELECT 1 FROM DUAL
+        test-while-idle: true # 检测到链接空闲时,验证是否有效
+        test-on-borrow: false # 申请链接时,不检测
+        test-on-return: false # 返回链接时,不检测
+        pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
+        # 如果上面开启了游标,这里要设置一下大小,例如 50
+        max-pool-prepared-statement-per-connection-size: -1
+        # 统计、监控配置
+        filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
+        # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
+        connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
+        use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
+        stat-view-servlet:
+          enabled: true
+          login-username: tianyun
+          login-password: tianyunperfect
+          allow: # 默认运行所有
+          deny: # 默认即可
+          reset-enable: true
+    polar:
+      type: com.alibaba.druid.pool.DruidDataSource
+      driver-class-name: com.mysql.cj.jdbc.Driver
+      jdbc-url: jdbc:mysql://121.41.100.198:3306/polar?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
+      username: root
+      password: root
+      #下面为连接池补充设置
+      druid:
+        initial-size: 5 # 初始化
+        max-active: 5 # 最大
+        min-idle: 5 # 最小
+        max-wait: 6000 # 超时时间
+        time-between-eviction-runs-millis: 60000 # 每分钟检查一次空闲链接
+        min-evictable-idle-time-millis: 300000 # 空闲链接可以保持多久而不被驱逐
+        # 检测链接是否有效的query
+        validation-query: SELECT 1 FROM DUAL
+        test-while-idle: true # 检测到链接空闲时,验证是否有效
+        test-on-borrow: false # 申请链接时,不检测
+        test-on-return: false # 返回链接时,不检测
+        pool-prepared-statements: false # 是否缓存preparedStatement,oracle打开,mysql关闭
+        # 如果上面开启了游标,这里要设置一下大小,例如 50
+        max-pool-prepared-statement-per-connection-size: -1
+        # 统计、监控配置
+        filters: stat,wall # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
+        # 合并执行的相同sql,避免因为参数不同而统计多条sql语句;开启慢sql记录
+        connect-properties: config.stat.mergeSql=true;config.stat.slowSqlMillis=500
+        use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
+        stat-view-servlet:
+          enabled: true
+          login-username: tianyun
+          login-password: tianyunperfect
+          allow: # 默认运行所有
+          deny: # 默认即可
+          reset-enable: true