类 InsertBatchSomeColumn

java.lang.Object
com.baomidou.mybatisplus.core.injector.AbstractMethod
com.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn
所有已实现的接口:
com.baomidou.mybatisplus.core.toolkit.Constants, com.baomidou.mybatisplus.core.toolkit.StringPool, Serializable

public class InsertBatchSomeColumn extends com.baomidou.mybatisplus.core.injector.AbstractMethod
批量新增数据,自选字段 insert

不同的数据库支持度不一样!!! 只在 mysql 下测试过!!! 只在 mysql 下测试过!!! 只在 mysql 下测试过!!!

除了主键是 数据库自增的未测试 外理论上都可以使用!!!

如果你使用自增有报错或主键值无法回写到entity,就不要跑来问为什么了,因为我也不知道!!!

自己的通用 mapper 如下使用:

 int insertBatchSomeColumn(List entityList);
 

  • 注意: 这是自选字段 insert !!,如果个别字段在 entity 里为 null 但是数据库中有配置默认值, insert 后数据库字段是为 null 而不是默认值
  • 常用的 Predicate:

  • 例1: t -> !t.isLogicDelete() , 表示不要逻辑删除字段
  • 例2: t -> !t.getProperty().equals("version") , 表示不要字段名为 version 的字段
  • 例3: t -> t.getFieldFill() != FieldFill.UPDATE) , 表示不要填充策略为 UPDATE 的字段
  • 从以下版本开始:
    2018-11-29
    作者:
    miemie
    另请参阅:
    • 字段概要

      从类继承的字段 com.baomidou.mybatisplus.core.injector.AbstractMethod

      builderAssistant, configuration, languageDriver, logger, methodName

      从接口继承的字段 com.baomidou.mybatisplus.core.toolkit.Constants

      AES, AES_CBC_CIPHER, ARRAY, AS, ASC, COLL, COLLECTION, COLUMN_MAP, COLUMN_MAP_IS_EMPTY, DESC, ENTITY, ENTITY_DOT, LIMIT, LIST, MD5, MP_OPTLOCK_VERSION_ORIGINAL, MYBATIS_PLUS, ORDER_BY, Q_WRAPPER_SQL_COMMENT, Q_WRAPPER_SQL_FIRST, Q_WRAPPER_SQL_SELECT, U_WRAPPER_SQL_SET, WHERE, WRAPPER, WRAPPER_DOT, WRAPPER_EMPTYOFNORMAL, WRAPPER_EMPTYOFWHERE, WRAPPER_ENTITY, WRAPPER_ENTITY_DOT, WRAPPER_EXPRESSION_ORDER, WRAPPER_NONEMPTYOFENTITY, WRAPPER_NONEMPTYOFNORMAL, WRAPPER_NONEMPTYOFWHERE, WRAPPER_PARAM, WRAPPER_PARAM_MIDDLE, WRAPPER_SQLSEGMENT

      从接口继承的字段 com.baomidou.mybatisplus.core.toolkit.StringPool

      AMPERSAND, AND, ASTERISK, AT, BACK_SLASH, BACKTICK, BYTES_NEW_LINE, COLON, COMMA, CRLF, DASH, DOLLAR, DOLLAR_LEFT_BRACE, DOT, DOT_CLASS, DOT_JAVA, DOT_NEWLINE, DOT_XML, DOTDOT, EMPTY, EMPTY_ARRAY, EQUALS, EXCLAMATION_MARK, FALSE, HASH, HASH_LEFT_BRACE, HAT, HTML_AMP, HTML_GT, HTML_LT, HTML_NBSP, HTML_QUOTE, ISO_8859_1, LEFT_BRACE, LEFT_BRACKET, LEFT_CHEV, LEFT_SQ_BRACKET, N, NEWLINE, NO, NULL, NUM, OFF, ON, ONE, PERCENT, PIPE, PLUS, QUESTION_MARK, QUOTE, RETURN, RIGHT_BRACE, RIGHT_BRACKET, RIGHT_CHEV, RIGHT_SQ_BRACKET, SEMICOLON, SINGLE_QUOTE, SLASH, SPACE, SQL, STAR, TAB, TILDA, TRUE, UNDERSCORE, US_ASCII, UTF_8, Y, YES, ZERO
    • 构造器概要

      构造器
      构造器
      说明
      默认方法名
      InsertBatchSomeColumn(String name, Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
       
      InsertBatchSomeColumn(Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
      默认方法名
    • 方法概要

      修饰符和类型
      方法
      说明
      org.apache.ibatis.mapping.MappedStatement
      injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, com.baomidou.mybatisplus.core.metadata.TableInfo tableInfo)
       
      setPredicate(Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
      字段筛选条件

      从类继承的方法 com.baomidou.mybatisplus.core.injector.AbstractMethod

      addDeleteMappedStatement, addDeleteMappedStatement, addInsertMappedStatement, addInsertMappedStatement, addMappedStatement, addMappedStatement, addSelectMappedStatementForOther, addSelectMappedStatementForOther, addSelectMappedStatementForTable, addSelectMappedStatementForTable, addUpdateMappedStatement, addUpdateMappedStatement, convertChooseEwSelect, convertIfEwParam, createSqlSource, filterTableFieldInfo, inject, optlockVersion, sqlComment, sqlCount, sqlFirst, sqlLogicSet, sqlOrderBy, sqlSelectColumns, sqlSelectObjsColumns, sqlSet, sqlWhereByMap, sqlWhereEntityWrapper

      从类继承的方法 java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • InsertBatchSomeColumn

        public InsertBatchSomeColumn()
        默认方法名
      • InsertBatchSomeColumn

        public InsertBatchSomeColumn(Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
        默认方法名
        参数:
        predicate - 字段筛选条件
      • InsertBatchSomeColumn

        public InsertBatchSomeColumn(String name, Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
        参数:
        name - 方法名
        predicate - 字段筛选条件
        从以下版本开始:
        3.5.0
    • 方法详细资料

      • injectMappedStatement

        public org.apache.ibatis.mapping.MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, com.baomidou.mybatisplus.core.metadata.TableInfo tableInfo)
        指定者:
        injectMappedStatement 在类中 com.baomidou.mybatisplus.core.injector.AbstractMethod
      • setPredicate

        public InsertBatchSomeColumn setPredicate(Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
        字段筛选条件
        返回:
        this.