mybatis plus:批量增删查 洪君

plus


        
            com.baomidou
            mybatis-plus
            2.1.9
        

        
        
            com.baomidou
            mybatisplus-spring-boot-starter
            1.0.5
            
                
                    org.apache.tomcat
                    tomcat-jdbc
                
            
        

            com.baomidou
            mybatis-plus
            2.1.9
        
  
 /**
     * 

* 插入(批量),该方法不适合 Oracle *

* * @param entityList 实体对象列表 * @return boolean */ boolean insertBatch(List entityList);

 

对象

package com.cn.oa.admin.model.obj;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;

import java.io.Serializable;

/**
 * Created by Administrator on 2019/11/10 0010.
 */
@Data
@TableName("gs_develop")
public class Example extends Model {

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 1、有效    -1、无效
     */
    private Integer status;

    @TableField("create_id")
    private Integer createId;
    @TableField("create_time")
    private String createTime;
    @TableField("modify_id")
    private Integer modifyId;
    @TableField("modify_time")
    private String modifyTime;

    //审核 1=通过  2=驳回  3=待审核
    @TableField(exist = false)
    private Integer checks;

    //    驳回理由
    @TableField(exist = false)
    private String reject;

    private static final long serialVersionUID = 1L;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }


}

 

xml


    
        INSERT INTO t_cost_type(type_name,father_id,`status`,create_id,create_time) VALUES
        
            (#{cost.typeName},#{cost.fatherId},#{cost.status},#{cost.createId},#{cost.createTime})
        
    
INSERT INTO t_cost_type(type_name,father_id,`status`,create_id,create_time) 
VALUES (?,?,?,?,?) , (?,?,?,?,?) , (?,?,?,?,?) 

 

plus:

XXService.insertBatch()

 


    
        
            UPDATE t_cost_type
            SET type_name=#{cost.typeName},
            modify_id=#{cost.modifyId},
            modify_time=#{cost.modifyTime}
            WHERE id=#{cost.id}
        
    
UPDATE t_cost_type SET type_name=?, modify_id=?, modify_time=? WHERE id=? ; 
UPDATE t_cost_type SET type_name=?, modify_id=?, modify_time=? WHERE id=? ;

    
        UPDATE t_cost_type SET `status`=-1 WHERE id IN
        
            #{id}
        
    

    
        delete t_cost_type WHERE id IN
        
            #{id}
        
    

 

plus:

XXService.updateBatchById()

 


    
        
        
        
        
            
            
        
    

 


            (#{cost.typeName},#{cost.fatherId},#{cost.status},#{cost.createId},#{cost.createTime})
        

collection="List"

 

删除的plus:

xxService.deleteBatchIds()

查询有以下方法:

xxService.selectBatchIds
xxService.selectPage()

 

增加、删除。修改等常用方法:

增加
Service.insert() 
           Service.insertAllColumn()


删除
           Service.delete(new EntityWrapper<>())
           Service.deleteById()


修改
            Service.update(new EntityWrapper<>())
           Service.updateById()
Service.updateAllColumnById()


查询

            Service.selectById()
            Service.selectList()
           Service.selectCount()
            Service.selectOne()

 

insert 简单的增加方法,参数是需要增加的对象

insert后,对象的主键id会自动获取  可以直接使用 

deleteById根据主键id进行删除

 

selectList是根据条件查询出list

selectCount是根据条件统计

selectOne是根条件查询出一个对象,实际是调用selectList,然后取第一个对象

 

Obj obj=new Obj();

obj.setCode(1);

EntityWrapper wrapper=new EntityWrapper(obj);

EntityWrapper可以先设置  set一个对象的基本属性 

 

EntityWrapper<> wrapper=new EntityWrapper();
            wrapper.eq("",0);
            wrapper.in("",new Integer[]{1,3,5});
EntityWrapper是条件构造器,eq是等于。in是范围查,第一个参数是数据库表的字段名,第一个参数是 值,即条件

updateById方法在插入时,会根据实体类的每个属性进行非空判断,只有非空的属性所对应的字段才会出现在拼接的SQL语句中。

updateAllColumnById方法在插入时,不管属性是否为空,属性所对应的字段都会出现在拼接的SQL语句中。

 

 

你可能感兴趣的:(mybatis plus:批量增删查 洪君)