spring Boot学习笔记(通用Mapper的使用)

时间:2020-04-25
本文章向大家介绍spring Boot学习笔记(通用Mapper的使用),主要包括spring Boot学习笔记(通用Mapper的使用)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

使用Mybatis框架编写持久层代码时,有时我们只需要单表的操作,这样就会产生一些机械重复的工作,而通用Mapper的出现帮我们解决了这个问题。
我使用的通用Mapper是abel533写的Github这个框架提供了极其方便的MyBatis单表的增删改查,可以让我们不必在单表操作的编写上浪费多少时间。
本文是在spring Boot与Mybatis的整合完成的基础上写的,如果不太清楚spring Boot与Mybatis的整合可以移步
通用Mapper的使用步骤
1.要使用通用Mapper需要先导入依赖

<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>2.0.3</version>
</dependency>

2.改造实体类

/**
 * User实体类
 */
//告知通用Mapper要对哪张表进行操作
@Table(name = "user")
public class User implements Serializable {
    //告知通用Mapper此属性对应表中的主键
    @Id
    //告知通用Mapper此属性是自增长的
    @KeySql(useGeneratedKeys = true)
    private Integer id;
    private String username;
    private Date birthday;
    private String sex;
    private String address;
    //忽略此属性,不作为查询条件
    @Transient
    private String test;
}

3.新建UserMapper2

@Mapper
public interface UserMapper2 extends tk.mybatis.mapper.common.Mapper<User> {
    //Mapper只需要继承tk.mybatis.mapper.common.Mapper<T>这个接口,通用Mapper就会自动帮我们生成Mybatis的单表的增删改查。
    //T:泛型,数据库表对应的实体类的名称,因为在application.properties中配置了pojo别名扫描包,所以没有写全类名
}

4.编写测试类

@RunWith(SpringRunner.class)
@SpringBootTest(classes = MySpringBootApplication.class)
public class UserMapper2Test {

    @Autowired
    private UserMapper2 userMapper2;

    //因为我懒,这里只写了一个根据主键查询,和一个根据User对象中的拥有的属性查询
    @Test
    public void TestMethod(){
        int id = 41;
        String username = "老王";
        User user = userMapper2.selectByPrimaryKey(id);
        User user2 = new User();
        user2.setUsername(username);
        User user1 = userMapper2.selectOne(user2);
        System.out.println(user1);
        System.out.println(user);
    }
}

原文地址:https://www.cnblogs.com/lazy-brain/p/12774237.html