MyBatis-Plus基础使用手册

MyBatis-Plus


MyBatis-plus官网
https://baomidou.com/

@Mapper
public interface AdminMapper extends BaseMapper<Admins> {
    
    

}
  • 使用MyBatis-plus 只需要继承BaseMapper
  • T 泛型需要制定要操作的实体类

只需要继承了BaseMapper接口就可以使用它提供的方法

MyBatis-plus 的BaseMapper接口内声明的方法
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.baomidou.mybatisplus.core.mapper;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.io.Serializable;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;

public interface BaseMapper<T> extends Mapper<T> {
    
    

    int insert(T entity);

    int deleteById(Serializable id);

    int deleteByMap(@Param("cm") Map<String, Object> columnMap);

    int delete(@Param("ew") Wrapper<T> wrapper);

    int deleteBatchIds(@Param("coll") Collection<? extends Serializable> idList);

    int updateById(@Param("et") T entity);

    int update(@Param("et") T entity, @Param("ew") Wrapper<T> updateWrapper);

    T selectById(Serializable id);

    List<T> selectBatchIds(@Param("coll") Collection<? extends Serializable> idList);

    List<T> selectByMap(@Param("cm") Map<String, Object> columnMap);

    T selectOne(@Param("ew") Wrapper<T> queryWrapper);

    Integer selectCount(@Param("ew") Wrapper<T> queryWrapper);

    List<T> selectList(@Param("ew") Wrapper<T> queryWrapper);

    List<Map<String, Object>> selectMaps(@Param("ew") Wrapper<T> queryWrapper);

    List<Object> selectObjs(@Param("ew") Wrapper<T> queryWrapper);

    <E extends IPage<T>> E selectPage(E page, @Param("ew") Wrapper<T> queryWrapper);

    <E extends IPage<Map<String, Object>>> E selectMapsPage(E page, @Param("ew") Wrapper<T> queryWrapper);
}
  • 使用MyBaits-plus时需要注意的点:
/**
 * 默认使用实体类中的名字去数据库中找同名的表,如果没有,需要指定
 */
@TableName(value = "admins")
public class Admins {
    
    
    /**
     * 指定数据库中对应表的主键,如果数据库中的主键名称和实体类中的id不同,需要制定
     */
    @TableId(value = "id", type = IdType.AUTO)
    private int id;
    private String username;
    private String password;

	/**
	 * 默认会将驼峰式命名转化为下划线
	 * 但有时候命名不同,可以使用该注解指定给字段对应的数据库中的字段
	 */
     @TableField(value = "head_photo")
    private String headphoto;
    private String isenable;
    private String phone;
    private String email;
    private String address;
    private String createTime;
    private String position;
    //省略get set 方法
	...
}

猜你喜欢

转载自blog.csdn.net/weixin_43941676/article/details/108719012