tk-mybatis使用selectByPrimaryKey无法根据主键查找获取结果

问题描述

在使用springboot+tk-mybatis做案例时遇到了一个坑,在测试tk-mybatis的通用Mapper中的selectByPrimaryKey方法的时候发现不能按照主键进行获取得到结果。 一开始以为是数据库的问题,重建数据库后还是一样的问题,然后开启mybatis sql日志打印功能后发现,生成的sql是有问题的:

tk-mybatis使用selectByPrimaryKey无法根据主键查找获取结果_第1张图片tk-mybatis使用selectByPrimaryKey无法根据主键查找获取结果_第2张图片tk-mybatis使用selectByPrimaryKey无法根据主键查找获取结果_第3张图片
sql日志:
在这里插入图片描述
从日志中可以发现它并不是按照id号来查,那就应该是主键不能被识别导致的,因为当实体类未设置主键时,tk-mybatis会将所有字段当成联合主键进行查询。后面找了半天发现自己犯了一个低级错误,真是泪奔,原来自己在写实体类时,引入@Id注解时导错了包。。。

问题解决

这里应该导入javax.persistence.Id,我却导成了org.springframework.data.annotation.Id。所以自己以后编写代码时一定要注意看清,在此特意为此次自己挖的坑记录一下,希望以后编码能够细心。

import javax.persistence.Id

正确sql:
在这里插入图片描述

你可能感兴趣的:(web开发,tk-mybatis,springboot)