栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Mybatis-Plus

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Mybatis-Plus

MP介绍


MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
说明: 使用MP将不会影响mybatis的使用.
 

MP特性

目录

MP介绍

MP特性

无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求

 Mybatis 特点

导入jar包:

说明: MP内部添加了mybatis的包,所以添加MP的包之后,应该删除原来的mybatis的包.

 编辑POJO对象

.继承baseMapper

修改YML配置文件

 MP工作原理实质: MP动态生成Sql语句.铺垫:1. insert into 表名(字段名…) value (属性值…)

Mp修改操作


无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求

 Mybatis 特点
  1. Mybaits 是一个半自动化的ORM映射框架
    1.结果集可以实现自动化的映射. 自动
    2.Sql语句需要自己手动完成. 手动

  1. 导入jar包:

  2. 说明: MP内部添加了mybatis的包,所以添加MP的包之后,应该删除原来的mybatis的包.

        

        
                com.baomidou
                mybatis-plus-boot-starter
                3.4.3
            


     

 编辑POJO对象
 
@Data
@Accessors(chain = true)
@NoArgsConstructor
@AllArgsConstructor
@TableName("demo_user")
        //对象与表一一对应 如果对象名和表名一致则表名可以省略
public class User implements Serializable {
    @TableId(type = IdType.AUTO)  //主键自增
    private Integer id;
    //@TableField(value = "name") //如果名称与属性一致则注解可以省略
    private String name;
    private Integer age;
    private String sex;
}

.继承baseMapper
//注意事项: 继承时必须添加泛型
public interface UserMapper extends baseMapper {

    List findAll();

}

修改YML配置文件

MP入门案例测试
 

 
    @Test
    public void insertUser(){
        User user = new User(null,"猴子",18, "男");
        userMapper.insert(user);
        System.out.println("新增入库成功!!!!");
    }

 MP工作原理
实质: MP动态生成Sql语句.
铺垫:
1. insert into 表名(字段名…) value (属性值…)

工作原理:
1. 用户执行userMapper.insert(user); 操作
2. 根据UserMapper的接口找到父级baseMapper.根据baseMapper的接口查找泛型对象User.
3. 根据User.class 获取注解@TableName(“demo_user”),获取表名
4. 根据User.class 获取所有的属性,根据属性获取指定的注解@TableField(value = “name”),获取字段名称
5. 根据属性获取属性的值.之后动态拼接成Sql语句
6. 将生成的Sql交给Mybatis执行入库操作.
1. insert into demo_user(id,name,age,sex) value (null,xx,xx,xx)

MP使用特点: 根据其中不为null的属性进行业务操作!!!

Mp修改操作

updateById()方法

1先通过id查寻到user

2。user.set() 给user设置新的属性

3.通过updateById()方法给user设置新的数值

       

    //修改
    @Test
    public void testUpdateUser(){
       User user= userMapper.selectById(1);
       user.setName("首善大使");
        userMapper.updateById(user);
    }

update()方法

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/458871.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号