0
点赞
收藏
分享

微信扫一扫

动力节点MybatisPlus教程笔记——基础篇

2 【基础篇】

2.1 通用Mapper接口介绍

有关于通用Mapper接口,之前我们已经看到了,我们自己编写的Mapper接口继承自BaseMapper接口,由BaseMapper接口提供了很多单表的增删改查相关的操作方法,在入门案例中,我们测试了查询所有的操作。在这一章节,我们介绍一些简单的Mapper接口中的方法,主要是感受一下,Mapper接口中对于单表的增删改查的操作都有涉及。更加高级的一些操作,随后的章节会讲到。

2.1.1 Mapper接口-简单插入数据

插入一条数据

@Testvoid insert(){
    User user = new User();
    user.setId(6L);
    user.setName("Mike");
    user.setAge(33);
    user.setEmail("test6@powernode.com");
    userMapper.insert(user);
}

2.1.2 Mapper接口-简单删除数据

根据id删除数据

@Testvoid deleteOne(){
    userMapper.deleteById(6L);
}

2.1.3 Mapper接口-简单修改数据

测试修改全部数据

@Testvoid updateById(){
    User user = new User();
    user.setId(6L);
    user.setName("迈克");
    user.setAge(35);
    user.setEmail("maike6@powernode.com");
    userMapper.updateById(user);
}

测试修改部分数据

@Testvoid updateById(){
    User user = new User();
    user.setId(6L);
    user.setName("Mike");
    user.setAge(35);
    user.setEmail("test6@powernode.com");
    userMapper.updateById(user);
}

2.1.4 Mapper接口-简单查询数据

根据Id查询

@Testvoid updateById(){
    User user = new User();
    user.setId(6L);
    user.setName("Mike");
    user.setAge(35);
    user.setEmail("test6@powernode.com");
    userMapper.updateById(user);
}

查询所有

@Testvoid selectList() {
    List<User> userList = userMapper.selectList(null);
    System._out_.println(userList);
}

2.1.5 小结

本章我们测试了通过接口提供的基本增删改查的实现,可以感受到,将来我们有这些增删改查需求的时候,直接找到对应的方法调用,由Mapper接口的代理对象就会直接给我们拼接好指定的SQL语句,完成查询。 本章节我们测试了一些基本的增删改查操作,有关于条件查询、分页查询等高级的查询操作,在随后章节会统一讲解。

2.2 通用service接口介绍

除了Mapper接口,MybatisPlus还提供了IService接口和对应的实现类ServiceImpl,该实现类已经提供好了一些对应的Service相关的方法,在某些场景下,我们可以直接使用ServiceImpl提供的方法,实现对应的功能。

IService接口

动力节点MybatisPlus教程笔记——基础篇_mybatis

IService接口中包含了service相关的一些增删改查方法

动力节点MybatisPlus教程笔记——基础篇_增删改查_02

ServiceImpl实现类

动力节点MybatisPlus教程笔记——基础篇_List_03

ServiceImpl实现类提供了service相关的增删改查方法的实现

动力节点MybatisPlus教程笔记——基础篇_List_04

UserService接口继承自IService接口

动力节点MybatisPlus教程笔记——基础篇_增删改查_05

UserServiceImpl类继承ServiceImpl<UserMapper,User>

动力节点MybatisPlus教程笔记——基础篇_User_06

动力节点MybatisPlus教程笔记——基础篇_增删改查_07

注入UserService对象,测试相关方法

2.2.1 Service接口-简单插入数据

@Testvoid insertService(){
    User user = new User();
    user.setId(7L);
    user.setName("zhangsan");
    user.setAge(35);
    user.setEmail("zhangsan@powernode.com");

    userService.save(user);
}

2.2.2 Service接口-简单删除数据

@Testvoid deleteService(){
    userService.removeById(7L);
}

2.2.3 Service接口-简单修改数据

@Testvoid updateService(){
    User user = new User();
    user.setId(6L);
    user.setAge(40);
    userService.updateById(user);
}

2.2.4 Service接口-简单查询数据

@Testvoid selectService(){
    List<User> userList = userService.selectList();
    System._out_.println(userList);
}

2.2.5 小结

通过继承MybatisPlus提供的Service接口,我们既可以拓展自己的service方法,也可以使用现有的一些service方法

2.3 自定义接口方法

MybatisPlus除了给我们提供了这些丰富的接口方法以外,对于我们自己的需求,也可以编写自定义的接口方法,我们通过自己编写SQL语句的形式,实现想要的SQL需求

2.3.1 自定义Mapper接口方法

Mapper接口中提供抽象方法

@Mapperpublic interface UserMapper extends BaseMapper<User> {
       User selectByName(String name);
}

提供映射配置文件,提供对应的SQL语句

动力节点MybatisPlus教程笔记——基础篇_mybatisplus_08

_<?_xml version="1.0" encoding="UTF-8" _?>_<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd"_>_<mapper namespace="com.powernode.mapper.UserMapper">

     <select id="selectByName" resultType="com.powernode.domain.User">
        select * from user where name = #{value}
     </select>

</mapper>

测试自定义的Mapper接口方法

@Testvoid myMethod(){
    User user = userMapper.selectByName("Jone");
    System._out_.println(user);
}

2.3.2 小结

通过本章节的学习,我们学会了自定义接口的方法,自定义接口的语法规范和之前编写Mybatis的语法规范一样,所以可以看出,MybatisPlus是无侵入式的,也就是引入了MybatisPlus并不会对于原先的语法造成任何改变。

举报

相关推荐

0 条评论