一、前言

大家在使用mybatis时,需要自己在写一下xml中书写一些sql代码,非常麻烦,当然也可以使用mybatis-plus来实现不用书写sql.不过最近看到公司项目中有使用tk.mybatis的,和mybatis-plus是有异曲同工之妙的,所有小编带大家配置和使用一下常用方法来体验一下!!

二、配置信息

  1. 首先我们先把pom文件的依赖导入进来:
	<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- lombok -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
        </dependency>

        <!-- Druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.16</version>
        </dependency>

        <!--jdbc-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <!-- mysql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>
        <!--通用mapper-->
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-spring-boot-starter</artifactId>
            <version>2.1.2</version>
        </dependency>
        <!-- 持久化包,与orm框架结合使用 -->
        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>javax.persistence-api</artifactId>
        </dependency>
    </dependencies>
  1. 接下来配置yml文件
server:
 port: 8089

spring:
 datasource:
  #使用阿里的Druid
  type: com.alibaba.druid.pool.DruidDataSource
  driver-class-name: com.mysql.cj.jdbc.Driver
  url: jdbc:mysql:///test?serverTimezone=UTC
  username: root
  password: root
#执行的sql会在控制台打印
logging:
 level:
  com.wang.test.demo: DEBUG
  1. 开始实体类的书写
package com.wang.test.demo.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "user")//对应到表名字
public class User implements Serializable {

    @Id//对应表的主键
    private Integer id;//必须用包装类,不然插入不到数据库中

    @Column(name = "Name")//解决实体类和数据库字段不一致问题
    private String name;

    private Integer age;
}
  1. 开始书写mapper接口
package com.wang.test.demo.mapper;

import com.wang.test.demo.entity.User;
import tk.mybatis.mapper.common.Mapper;

//最好直接继承Mapper<T>,继承BaseMapper<T>条件查询还要继承ExampleMapper<T>
public interface UserMapper extends Mapper<User> {

}

三、测试

直接在controller中写一个方法来测试:

User user = new User();
user.setId(1);
User user1 = userMapper.selectByPrimaryKey(user);//根据主键查询出一条

四、结束

这样就可以使用tk.mybatis的所有方法,谢谢大家的观看,有什么问题可以提出来哦!

想看tk.mybatis常用方法的可以看一下:
直通车---> tk.mybatis常用方法

Q.E.D.