自己在使用tk.mybatis,遇到了这两个问题,在这里分享给大家:

第一个使用insert语句,插入到数据库是为空:

解决方案:就是实体类的字段类型都要是包装类

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;
}

第二个问题:mapper怎么找不到selectByExample等一些方法呢?
因为你的mapper接口继承的是BaseMapper<>

解决方案:让mapper接口继承Mapper<>

package com.wang.test.demo.mapper;

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

public interface UserMapper extends Mapper<User> {

}

Q.E.D.