Pārlūkot izejas kodu

add config mapper

tianyunperfect 3 gadi atpakaļ
vecāks
revīzija
355e18dccd

+ 471 - 0
book-server/src/main/java/com/book/server/dao/entity/Config.java

@@ -0,0 +1,471 @@
+package com.book.server.dao.entity;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Arrays;
+import lombok.Data;
+
+@Data
+public class Config implements Serializable {
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.id
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private Integer id;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.name
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String name;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.group
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String group;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.title
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String title;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.tip
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String tip;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.type
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String type;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.rule
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String rule;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.extend
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String extend;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.value
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String value;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column config.content
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private String content;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public static Config.Builder builder() {
+        return new Config.Builder();
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public static class Builder {
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private Config obj;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder() {
+            this.obj = new Config();
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.id
+         *
+         * @param id the value for config.id
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config.name
+         *
+         * @param name the value for config.name
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder name(String name) {
+            obj.setName(name);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.group
+         *
+         * @param group the value for config.group
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder group(String group) {
+            obj.setGroup(group);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.title
+         *
+         * @param title the value for config.title
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder title(String title) {
+            obj.setTitle(title);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.tip
+         *
+         * @param tip the value for config.tip
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder tip(String tip) {
+            obj.setTip(tip);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.type
+         *
+         * @param type the value for config.type
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder type(String type) {
+            obj.setType(type);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.rule
+         *
+         * @param rule the value for config.rule
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder rule(String rule) {
+            obj.setRule(rule);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.extend
+         *
+         * @param extend the value for config.extend
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder extend(String extend) {
+            obj.setExtend(extend);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.value
+         *
+         * @param value the value for config.value
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder value(String value) {
+            obj.setValue(value);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method sets the value of the database column config.content
+         *
+         * @param content the value for config.content
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Builder content(String content) {
+            obj.setContent(content);
+            return this;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public Config build() {
+            return this.obj;
+        }
+    }
+
+    /**
+     * This enum was generated by MyBatis Generator.
+     * This enum corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public enum Column {
+        id("id", "id", "INTEGER", false),
+        name("name", "name", "VARCHAR", false),
+        group("group", "group", "VARCHAR", false),
+        title("title", "title", "VARCHAR", false),
+        tip("tip", "tip", "VARCHAR", false),
+        type("type", "type", "VARCHAR", false),
+        rule("rule", "rule", "VARCHAR", false),
+        extend("extend", "extend", "VARCHAR", false),
+        value("value", "value", "LONGVARCHAR", false),
+        content("content", "content", "LONGVARCHAR", false);
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private static final String BEGINNING_DELIMITER = "\"";
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private static final String ENDING_DELIMITER = "\"";
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private final String column;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private final boolean isColumnNameDelimited;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private final String javaProperty;
+
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private final String jdbcType;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String value() {
+            return this.column;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String getValue() {
+            return this.column;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String getJavaProperty() {
+            return this.javaProperty;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String getJdbcType() {
+            return this.jdbcType;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String desc() {
+            return this.getEscapedColumnName() + " DESC";
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String asc() {
+            return this.getEscapedColumnName() + " ASC";
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public static Column[] all() {
+            return Column.values();
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public String getAliasedEscapedColumnName() {
+            return this.getEscapedColumnName();
+        }
+    }
+}

+ 1351 - 0
book-server/src/main/java/com/book/server/dao/entity/example/ConfigExample.java

@@ -0,0 +1,1351 @@
+package com.book.server.dao.entity.example;
+
+import com.book.server.dao.entity.Config;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ConfigExample {
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    protected String orderByClause;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    protected boolean distinct;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    protected List<Criteria> oredCriteria;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    protected Integer offset;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    protected Integer rows;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample orderBy(String orderByClause) {
+        this.setOrderByClause(orderByClause);
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public void setOffset(Integer offset) {
+        this.offset = offset;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public Integer getOffset() {
+        return this.offset;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public void setRows(Integer rows) {
+        this.rows = rows;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public Integer getRows() {
+        return this.rows;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample limit(Integer rows) {
+        this.rows = rows;
+        return this;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public static Criteria newAndCreateCriteria() {
+        ConfigExample example = new ConfigExample();
+        return example.createCriteria();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    public ConfigExample 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 config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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(Config.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(Config.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(Config.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(Config.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(Config.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(Config.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 andNameIsNull() {
+            addCriterion("name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameIsNotNull() {
+            addCriterion("name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameEqualTo(String value) {
+            addCriterion("name =", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotEqualTo(String value) {
+            addCriterion("name <>", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThan(String value) {
+            addCriterion("name >", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThanOrEqualTo(String value) {
+            addCriterion("name >=", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThan(String value) {
+            addCriterion("name <", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThanOrEqualTo(String value) {
+            addCriterion("name <=", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("name <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLike(String value) {
+            addCriterion("name like", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotLike(String value) {
+            addCriterion("name not like", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameIn(List<String> values) {
+            addCriterion("name in", values, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotIn(List<String> values) {
+            addCriterion("name not in", values, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameBetween(String value1, String value2) {
+            addCriterion("name between", value1, value2, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotBetween(String value1, String value2) {
+            addCriterion("name not between", value1, value2, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupIsNull() {
+            addCriterion("group is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupIsNotNull() {
+            addCriterion("group is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupEqualTo(String value) {
+            addCriterion("group =", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupNotEqualTo(String value) {
+            addCriterion("group <>", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupGreaterThan(String value) {
+            addCriterion("group >", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupGreaterThanOrEqualTo(String value) {
+            addCriterion("group >=", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupLessThan(String value) {
+            addCriterion("group <", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupLessThanOrEqualTo(String value) {
+            addCriterion("group <=", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("group <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupLike(String value) {
+            addCriterion("group like", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupNotLike(String value) {
+            addCriterion("group not like", value, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupIn(List<String> values) {
+            addCriterion("group in", values, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupNotIn(List<String> values) {
+            addCriterion("group not in", values, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupBetween(String value1, String value2) {
+            addCriterion("group between", value1, value2, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andGroupNotBetween(String value1, String value2) {
+            addCriterion("group not between", value1, value2, "group");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleIsNull() {
+            addCriterion("title is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleIsNotNull() {
+            addCriterion("title is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleEqualTo(String value) {
+            addCriterion("title =", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleNotEqualTo(String value) {
+            addCriterion("title <>", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleGreaterThan(String value) {
+            addCriterion("title >", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleGreaterThanOrEqualTo(String value) {
+            addCriterion("title >=", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleLessThan(String value) {
+            addCriterion("title <", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleLessThanOrEqualTo(String value) {
+            addCriterion("title <=", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("title <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleLike(String value) {
+            addCriterion("title like", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleNotLike(String value) {
+            addCriterion("title not like", value, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleIn(List<String> values) {
+            addCriterion("title in", values, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleNotIn(List<String> values) {
+            addCriterion("title not in", values, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleBetween(String value1, String value2) {
+            addCriterion("title between", value1, value2, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTitleNotBetween(String value1, String value2) {
+            addCriterion("title not between", value1, value2, "title");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipIsNull() {
+            addCriterion("tip is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipIsNotNull() {
+            addCriterion("tip is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipEqualTo(String value) {
+            addCriterion("tip =", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipNotEqualTo(String value) {
+            addCriterion("tip <>", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipGreaterThan(String value) {
+            addCriterion("tip >", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipGreaterThanOrEqualTo(String value) {
+            addCriterion("tip >=", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipLessThan(String value) {
+            addCriterion("tip <", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipLessThanOrEqualTo(String value) {
+            addCriterion("tip <=", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("tip <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTipLike(String value) {
+            addCriterion("tip like", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipNotLike(String value) {
+            addCriterion("tip not like", value, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipIn(List<String> values) {
+            addCriterion("tip in", values, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipNotIn(List<String> values) {
+            addCriterion("tip not in", values, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipBetween(String value1, String value2) {
+            addCriterion("tip between", value1, value2, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTipNotBetween(String value1, String value2) {
+            addCriterion("tip not between", value1, value2, "tip");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNull() {
+            addCriterion("type is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNotNull() {
+            addCriterion("type is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeEqualTo(String value) {
+            addCriterion("type =", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotEqualTo(String value) {
+            addCriterion("type <>", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThan(String value) {
+            addCriterion("type >", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanOrEqualTo(String value) {
+            addCriterion("type >=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThan(String value) {
+            addCriterion("type <", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanOrEqualTo(String value) {
+            addCriterion("type <=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("type <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLike(String value) {
+            addCriterion("type like", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotLike(String value) {
+            addCriterion("type not like", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIn(List<String> values) {
+            addCriterion("type in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotIn(List<String> values) {
+            addCriterion("type not in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeBetween(String value1, String value2) {
+            addCriterion("type between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotBetween(String value1, String value2) {
+            addCriterion("type not between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleIsNull() {
+            addCriterion("rule is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleIsNotNull() {
+            addCriterion("rule is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleEqualTo(String value) {
+            addCriterion("rule =", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleNotEqualTo(String value) {
+            addCriterion("rule <>", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleGreaterThan(String value) {
+            addCriterion("rule >", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleGreaterThanOrEqualTo(String value) {
+            addCriterion("rule >=", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleLessThan(String value) {
+            addCriterion("rule <", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleLessThanOrEqualTo(String value) {
+            addCriterion("rule <=", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("rule <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleLike(String value) {
+            addCriterion("rule like", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleNotLike(String value) {
+            addCriterion("rule not like", value, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleIn(List<String> values) {
+            addCriterion("rule in", values, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleNotIn(List<String> values) {
+            addCriterion("rule not in", values, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleBetween(String value1, String value2) {
+            addCriterion("rule between", value1, value2, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andRuleNotBetween(String value1, String value2) {
+            addCriterion("rule not between", value1, value2, "rule");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendIsNull() {
+            addCriterion("extend is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendIsNotNull() {
+            addCriterion("extend is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendEqualTo(String value) {
+            addCriterion("extend =", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend = ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendNotEqualTo(String value) {
+            addCriterion("extend <>", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendNotEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend <> ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendGreaterThan(String value) {
+            addCriterion("extend >", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendGreaterThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend > ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendGreaterThanOrEqualTo(String value) {
+            addCriterion("extend >=", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendGreaterThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend >= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendLessThan(String value) {
+            addCriterion("extend <", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendLessThanColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend < ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendLessThanOrEqualTo(String value) {
+            addCriterion("extend <=", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendLessThanOrEqualToColumn(Config.Column column) {
+            addCriterion(new StringBuilder("extend <= ").append(column.getEscapedColumnName()).toString());
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendLike(String value) {
+            addCriterion("extend like", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendNotLike(String value) {
+            addCriterion("extend not like", value, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendIn(List<String> values) {
+            addCriterion("extend in", values, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendNotIn(List<String> values) {
+            addCriterion("extend not in", values, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendBetween(String value1, String value2) {
+            addCriterion("extend between", value1, value2, "extend");
+            return (Criteria) this;
+        }
+
+        public Criteria andExtendNotBetween(String value1, String value2) {
+            addCriterion("extend not between", value1, value2, "extend");
+            return (Criteria) this;
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table config
+     *
+     * @mbg.generated do_not_delete_during_merge Sat Aug 21 15:47:55 CST 2021
+     */
+    public static class Criteria extends GeneratedCriteria {
+        /**
+         * This field was generated by MyBatis Generator.
+         * This field corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        private ConfigExample example;
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        protected Criteria(ConfigExample example) {
+            super();
+            this.example = example;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        public ConfigExample example() {
+            return this.example;
+        }
+
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 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 config
+             *
+             * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+             */
+            Criteria add(Criteria add);
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 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 config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        void criteria(Criteria criteria);
+    }
+
+    public interface IExampleWhen {
+        /**
+         * This method was generated by MyBatis Generator.
+         * This method corresponds to the database table config
+         *
+         * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+         */
+        void example(com.book.server.dao.entity.example.ConfigExample example);
+    }
+}

+ 204 - 0
book-server/src/main/java/com/book/server/dao/mapper/ConfigMapper.java

@@ -0,0 +1,204 @@
+package com.book.server.dao.mapper;
+
+import com.book.server.dao.entity.Config;
+import com.book.server.dao.entity.example.ConfigExample;
+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 ConfigMapper {
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    long countByExample(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int deleteByExample(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int deleteByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int insert(Config record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int insertSelective(@Param("record") Config record, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    Config selectOneByExample(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    Config selectOneByExampleSelective(@Param("example") ConfigExample example, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    Config selectOneByExampleWithBLOBs(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    List<Config> selectByExampleSelective(@Param("example") ConfigExample example, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    List<Config> selectByExampleWithBLOBs(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    List<Config> selectByExample(ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    Config selectByPrimaryKeySelective(@Param("id") Integer id, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    Config selectByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByExampleSelective(@Param("record") Config record, @Param("example") ConfigExample example, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByExampleWithBLOBs(@Param("record") Config record, @Param("example") ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByExample(@Param("record") Config record, @Param("example") ConfigExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByPrimaryKeySelective(@Param("record") Config record, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByPrimaryKeyWithBLOBs(Config record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int updateByPrimaryKey(Config record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int batchInsert(@Param("list") List<Config> list);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int batchInsertSelective(@Param("list") List<Config> list, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int upsert(Config record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int upsertSelective(@Param("record") Config record, @Param("selective") Config.Column ... selective);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table config
+     *
+     * @mbg.generated Sat Aug 21 15:47:55 CST 2021
+     */
+    int upsertWithBLOBs(Config record);
+}

+ 863 - 0
book-server/src/main/resources/mapper/ConfigMapper.xml

@@ -0,0 +1,863 @@
+<?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.ConfigMapper">
+  <resultMap id="BaseResultMap" type="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="group" jdbcType="VARCHAR" property="group" />
+    <result column="title" jdbcType="VARCHAR" property="title" />
+    <result column="tip" jdbcType="VARCHAR" property="tip" />
+    <result column="type" jdbcType="VARCHAR" property="type" />
+    <result column="rule" jdbcType="VARCHAR" property="rule" />
+    <result column="extend" jdbcType="VARCHAR" property="extend" />
+  </resultMap>
+  <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    <result column="value" jdbcType="LONGVARCHAR" property="value" />
+    <result column="content" jdbcType="LONGVARCHAR" property="content" />
+  </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 15:47:55 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 15:47:55 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 15:47:55 CST 2021.
+    -->
+    id, name, group, title, tip, type, rule, extend
+  </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 15:47:55 CST 2021.
+    -->
+    value, content
+  </sql>
+  <select id="selectByExampleWithBLOBs" parameterType="com.book.server.dao.entity.example.ConfigExample" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from config
+    <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.server.dao.entity.example.ConfigExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from config
+    <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 15:47:55 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 config
+    <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 15:47:55 CST 2021.
+    -->
+    select 
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from config
+    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 15:47:55 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 config
+    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 15:47:55 CST 2021.
+    -->
+    delete from config
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.book.server.dao.entity.example.ConfigExample">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    delete from config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    insert into config (id, name, group, 
+      title, tip, type, rule, 
+      extend, value, content
+      )
+    values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{group,jdbcType=VARCHAR}, 
+      #{title,jdbcType=VARCHAR}, #{tip,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{rule,jdbcType=VARCHAR}, 
+      #{extend,jdbcType=VARCHAR}, #{value,jdbcType=LONGVARCHAR}, #{content,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 15:47:55 CST 2021.
+    -->
+    insert into config
+    <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.name != null">
+            name,
+          </if>
+          <if test="record.group != null">
+            group,
+          </if>
+          <if test="record.title != null">
+            title,
+          </if>
+          <if test="record.tip != null">
+            tip,
+          </if>
+          <if test="record.type != null">
+            type,
+          </if>
+          <if test="record.rule != null">
+            rule,
+          </if>
+          <if test="record.extend != null">
+            extend,
+          </if>
+          <if test="record.value != null">
+            value,
+          </if>
+          <if test="record.content != null">
+            content,
+          </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.name != null">
+            #{record.name,jdbcType=VARCHAR},
+          </if>
+          <if test="record.group != null">
+            #{record.group,jdbcType=VARCHAR},
+          </if>
+          <if test="record.title != null">
+            #{record.title,jdbcType=VARCHAR},
+          </if>
+          <if test="record.tip != null">
+            #{record.tip,jdbcType=VARCHAR},
+          </if>
+          <if test="record.type != null">
+            #{record.type,jdbcType=VARCHAR},
+          </if>
+          <if test="record.rule != null">
+            #{record.rule,jdbcType=VARCHAR},
+          </if>
+          <if test="record.extend != null">
+            #{record.extend,jdbcType=VARCHAR},
+          </if>
+          <if test="record.value != null">
+            #{record.value,jdbcType=LONGVARCHAR},
+          </if>
+          <if test="record.content != null">
+            #{record.content,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+  </insert>
+  <select id="countByExample" parameterType="com.book.server.dao.entity.example.ConfigExample" 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 15:47:55 CST 2021.
+    -->
+    select count(*) from config
+    <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 15:47:55 CST 2021.
+    -->
+    update config
+    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.name != null">
+            name = #{record.name,jdbcType=VARCHAR},
+          </if>
+          <if test="record.group != null">
+            group = #{record.group,jdbcType=VARCHAR},
+          </if>
+          <if test="record.title != null">
+            title = #{record.title,jdbcType=VARCHAR},
+          </if>
+          <if test="record.tip != null">
+            tip = #{record.tip,jdbcType=VARCHAR},
+          </if>
+          <if test="record.type != null">
+            type = #{record.type,jdbcType=VARCHAR},
+          </if>
+          <if test="record.rule != null">
+            rule = #{record.rule,jdbcType=VARCHAR},
+          </if>
+          <if test="record.extend != null">
+            extend = #{record.extend,jdbcType=VARCHAR},
+          </if>
+          <if test="record.value != null">
+            value = #{record.value,jdbcType=LONGVARCHAR},
+          </if>
+          <if test="record.content != null">
+            content = #{record.content,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 15:47:55 CST 2021.
+    -->
+    update config
+    set id = #{record.id,jdbcType=INTEGER},
+      name = #{record.name,jdbcType=VARCHAR},
+      group = #{record.group,jdbcType=VARCHAR},
+      title = #{record.title,jdbcType=VARCHAR},
+      tip = #{record.tip,jdbcType=VARCHAR},
+      type = #{record.type,jdbcType=VARCHAR},
+      rule = #{record.rule,jdbcType=VARCHAR},
+      extend = #{record.extend,jdbcType=VARCHAR},
+      value = #{record.value,jdbcType=LONGVARCHAR},
+      content = #{record.content,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 15:47:55 CST 2021.
+    -->
+    update config
+    set id = #{record.id,jdbcType=INTEGER},
+      name = #{record.name,jdbcType=VARCHAR},
+      group = #{record.group,jdbcType=VARCHAR},
+      title = #{record.title,jdbcType=VARCHAR},
+      tip = #{record.tip,jdbcType=VARCHAR},
+      type = #{record.type,jdbcType=VARCHAR},
+      rule = #{record.rule,jdbcType=VARCHAR},
+      extend = #{record.extend,jdbcType=VARCHAR}
+    <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 15:47:55 CST 2021.
+    -->
+    update config
+    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.name != null">
+            name = #{record.name,jdbcType=VARCHAR},
+          </if>
+          <if test="record.group != null">
+            group = #{record.group,jdbcType=VARCHAR},
+          </if>
+          <if test="record.title != null">
+            title = #{record.title,jdbcType=VARCHAR},
+          </if>
+          <if test="record.tip != null">
+            tip = #{record.tip,jdbcType=VARCHAR},
+          </if>
+          <if test="record.type != null">
+            type = #{record.type,jdbcType=VARCHAR},
+          </if>
+          <if test="record.rule != null">
+            rule = #{record.rule,jdbcType=VARCHAR},
+          </if>
+          <if test="record.extend != null">
+            extend = #{record.extend,jdbcType=VARCHAR},
+          </if>
+          <if test="record.value != null">
+            value = #{record.value,jdbcType=LONGVARCHAR},
+          </if>
+          <if test="record.content != null">
+            content = #{record.content,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+    where id = #{record.id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKeyWithBLOBs" parameterType="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    update config
+    set name = #{name,jdbcType=VARCHAR},
+      group = #{group,jdbcType=VARCHAR},
+      title = #{title,jdbcType=VARCHAR},
+      tip = #{tip,jdbcType=VARCHAR},
+      type = #{type,jdbcType=VARCHAR},
+      rule = #{rule,jdbcType=VARCHAR},
+      extend = #{extend,jdbcType=VARCHAR},
+      value = #{value,jdbcType=LONGVARCHAR},
+      content = #{content,jdbcType=LONGVARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    update config
+    set name = #{name,jdbcType=VARCHAR},
+      group = #{group,jdbcType=VARCHAR},
+      title = #{title,jdbcType=VARCHAR},
+      tip = #{tip,jdbcType=VARCHAR},
+      type = #{type,jdbcType=VARCHAR},
+      rule = #{rule,jdbcType=VARCHAR},
+      extend = #{extend,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <select id="selectOneByExample" parameterType="com.book.server.dao.entity.example.ConfigExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    select
+    <include refid="Base_Column_List" />
+    from config
+    <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.server.dao.entity.example.ConfigExample" resultMap="ResultMapWithBLOBs">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    select
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from config
+    <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 15:47:55 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 config
+    <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 15:47:55 CST 2021.
+    -->
+    insert into config
+    (id, name, group, title, tip, type, rule, extend, value, content)
+    values
+    <foreach collection="list" item="item" separator=",">
+      (#{item.id,jdbcType=INTEGER}, #{item.name,jdbcType=VARCHAR}, #{item.group,jdbcType=VARCHAR}, 
+        #{item.title,jdbcType=VARCHAR}, #{item.tip,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, 
+        #{item.rule,jdbcType=VARCHAR}, #{item.extend,jdbcType=VARCHAR}, #{item.value,jdbcType=LONGVARCHAR}, 
+        #{item.content,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 15:47:55 CST 2021.
+    -->
+    insert into config (
+    <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="'name'.toString() == column.value">
+          #{item.name,jdbcType=VARCHAR}
+        </if>
+        <if test="'group'.toString() == column.value">
+          #{item.group,jdbcType=VARCHAR}
+        </if>
+        <if test="'title'.toString() == column.value">
+          #{item.title,jdbcType=VARCHAR}
+        </if>
+        <if test="'tip'.toString() == column.value">
+          #{item.tip,jdbcType=VARCHAR}
+        </if>
+        <if test="'type'.toString() == column.value">
+          #{item.type,jdbcType=VARCHAR}
+        </if>
+        <if test="'rule'.toString() == column.value">
+          #{item.rule,jdbcType=VARCHAR}
+        </if>
+        <if test="'extend'.toString() == column.value">
+          #{item.extend,jdbcType=VARCHAR}
+        </if>
+        <if test="'value'.toString() == column.value">
+          #{item.value,jdbcType=LONGVARCHAR}
+        </if>
+        <if test="'content'.toString() == column.value">
+          #{item.content,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 15:47:55 CST 2021.
+    -->
+    insert into config
+    <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.name != null">
+            name,
+          </if>
+          <if test="record.group != null">
+            group,
+          </if>
+          <if test="record.title != null">
+            title,
+          </if>
+          <if test="record.tip != null">
+            tip,
+          </if>
+          <if test="record.type != null">
+            type,
+          </if>
+          <if test="record.rule != null">
+            rule,
+          </if>
+          <if test="record.extend != null">
+            extend,
+          </if>
+          <if test="record.value != null">
+            value,
+          </if>
+          <if test="record.content != null">
+            content,
+          </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.name != null">
+            #{record.name,jdbcType=VARCHAR},
+          </if>
+          <if test="record.group != null">
+            #{record.group,jdbcType=VARCHAR},
+          </if>
+          <if test="record.title != null">
+            #{record.title,jdbcType=VARCHAR},
+          </if>
+          <if test="record.tip != null">
+            #{record.tip,jdbcType=VARCHAR},
+          </if>
+          <if test="record.type != null">
+            #{record.type,jdbcType=VARCHAR},
+          </if>
+          <if test="record.rule != null">
+            #{record.rule,jdbcType=VARCHAR},
+          </if>
+          <if test="record.extend != null">
+            #{record.extend,jdbcType=VARCHAR},
+          </if>
+          <if test="record.value != null">
+            #{record.value,jdbcType=LONGVARCHAR},
+          </if>
+          <if test="record.content != null">
+            #{record.content,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.name != null">
+            name = #{record.name,jdbcType=VARCHAR},
+          </if>
+          <if test="record.group != null">
+            group = #{record.group,jdbcType=VARCHAR},
+          </if>
+          <if test="record.title != null">
+            title = #{record.title,jdbcType=VARCHAR},
+          </if>
+          <if test="record.tip != null">
+            tip = #{record.tip,jdbcType=VARCHAR},
+          </if>
+          <if test="record.type != null">
+            type = #{record.type,jdbcType=VARCHAR},
+          </if>
+          <if test="record.rule != null">
+            rule = #{record.rule,jdbcType=VARCHAR},
+          </if>
+          <if test="record.extend != null">
+            extend = #{record.extend,jdbcType=VARCHAR},
+          </if>
+          <if test="record.value != null">
+            value = #{record.value,jdbcType=LONGVARCHAR},
+          </if>
+          <if test="record.content != null">
+            content = #{record.content,jdbcType=LONGVARCHAR},
+          </if>
+        </trim>
+      </otherwise>
+    </choose>
+  </insert>
+  <insert id="upsert" parameterType="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    insert into config
+    (id, name, group, title, tip, type, rule, extend)
+    values
+    (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{group,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, 
+      #{tip,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{rule,jdbcType=VARCHAR}, #{extend,jdbcType=VARCHAR}
+      )
+    on duplicate key update 
+    id = #{id,jdbcType=INTEGER}, 
+    name = #{name,jdbcType=VARCHAR}, 
+    group = #{group,jdbcType=VARCHAR}, 
+    title = #{title,jdbcType=VARCHAR}, 
+    tip = #{tip,jdbcType=VARCHAR}, 
+    type = #{type,jdbcType=VARCHAR}, 
+    rule = #{rule,jdbcType=VARCHAR}, 
+    extend = #{extend,jdbcType=VARCHAR}
+  </insert>
+  <insert id="upsertWithBLOBs" parameterType="com.book.server.dao.entity.Config">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Sat Aug 21 15:47:55 CST 2021.
+    -->
+    insert into config
+    (id, name, group, title, tip, type, rule, extend, value, content)
+    values
+    (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{group,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, 
+      #{tip,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{rule,jdbcType=VARCHAR}, #{extend,jdbcType=VARCHAR}, 
+      #{value,jdbcType=LONGVARCHAR}, #{content,jdbcType=LONGVARCHAR})
+    on duplicate key update 
+    id = #{id,jdbcType=INTEGER}, 
+    name = #{name,jdbcType=VARCHAR}, 
+    group = #{group,jdbcType=VARCHAR}, 
+    title = #{title,jdbcType=VARCHAR}, 
+    tip = #{tip,jdbcType=VARCHAR}, 
+    type = #{type,jdbcType=VARCHAR}, 
+    rule = #{rule,jdbcType=VARCHAR}, 
+    extend = #{extend,jdbcType=VARCHAR}, 
+    value = #{value,jdbcType=LONGVARCHAR}, 
+    content = #{content,jdbcType=LONGVARCHAR}
+  </insert>
+</mapper>

+ 1 - 1
book-server/src/main/resources/mybatis-generator.xml

@@ -128,7 +128,7 @@
 <!--        <table tableName="return_recommand"></table>-->
 <!--        <table tableName="bookshelf_recommand"></table>-->
 <!--        <table tableName="smart_recommand"></table>-->
-        <table tableName=""></table>
+        <table tableName="config"></table>
 
     </context>