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
EntityWrapper可以先设置 set一个对象的基本属性
EntityWrapper<> wrapper=new EntityWrapper();
wrapper.eq("",0);
wrapper.in("",new Integer[]{1,3,5});
EntityWrapper是条件构造器,eq是等于。in是范围查,第一个参数是数据库表的字段名,第一个参数是 值,即条件
updateById方法在插入时,会根据实体类的每个属性进行非空判断,只有非空的属性所对应的字段才会出现在拼接的SQL语句中。
updateAllColumnById方法在插入时,不管属性是否为空,属性所对应的字段都会出现在拼接的SQL语句中。