java - spring boot 集成mybatis 注解版查询
本文介绍了java - spring boot 集成mybatis 注解版查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
-spring boot 集成 mybatis 使用注解实现
spring boot 和 mybatis已经正常集成,在使用查询时使用的是注解,(项目没有任何XML文件)
@Mapper
@Table(name = "t_user")
public interface UserMapper {
@Select("select * from t_user where user_id = #{id}")
public User findUserById(@Param("id") String id);
}
这种方式是不知道为什么,只有几个属性会填充值,其他属性查询出来的结果都为null
但是我如果写了
@Results({
@Result(column = "user_id",property = "userId"),
@Result(column = "username",property = "username"),
@Result(column = "pass",property = "pass"),
@Result(column = "phone_number",property = "phoneNumber")
})
就会完全正确,每个属性都有值
问题1: 为什么会出现有的属性有值,有的属性没值?
问题2:我不能每个查询语句都这么写,这样会有很多的重复的@Result
部分,有没有注解将其在内部进行对应关系实现,不需要每次都写@ Result
?
解决方案
问题1. 因为结果集的column和Bean的property不对应,当然就会null.
问题2. 你可以在sql中用别名,使得column和property对应,这样就不会出现问题1.
这篇关于java - spring boot 集成mybatis 注解版查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文