Mybatis-plus查询List某些字段为NULL的⼩问题
基本上就是实体类与数据库命名字段不匹配问题,还有就是注意驼峰命名法在Mybatis-plus实际运⾏Query时候的别名问题
下⾯是⼀个简单的JavaBean
平静的意思
package jmu.rjc.vo;
import batisplus.annotation.IdType;
import batisplus.annotation.TableField;
import batisplus.annotation.TableId;方向标
import batisplus.annotation.TableName;
import lombok.*;
perimental.Accessors;
import org.springframework.lang.NonNull;
import java.io.Serializable;
听音乐用英语怎么说
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
youmakemesick
@EqualsAndHashCode(callSuper =fal)
@Accessors(chain =true)
@TableName(value ="friends")
public class Friends implements Serializable {
private static final long rialVersionUID =1L;
@TableId(value ="fid",type = IdType.AUTO)
private Long fid;
//这⾥直接⽤下划线隔开,这时候就要注意,需要在 application.yaml ⽂件中配置Mybatis-plus关闭驼峰命名法
@NonNull
@TableField(value ="url")伞的英语单词
ride的过去式和过去分词private String friend_url;
}
测试没有配置之前的查询,其中 friend_url=null
可以看到 friend_url 不是驼峰命名法,所以需要去 application.yaml⽂件中配置 mybatis-plus
mybatis-plus:
configuration:
map-underscore-to-camel-ca:fal
测试配置之后的查询,friend_url=1女神的英文
package jmu.rjc.vo;
import batisplus.annotation.IdType;
import batisplus.annotation.TableField;
import batisplus.annotation.TableId;
import batisplus.annotation.TableName;
import lombok.*;
perimental.Accessors;
import org.springframework.lang.NonNull;
import java.io.Serializable;
@Data
tgt@NoArgsConstructor
@AllArgsConstructor
@ToString
@EqualsAndHashCode(callSuper =fal)
在线翻译词典@Accessors(chain =true)
@TableName(value ="friends")
public class Friends implements Serializable {
private static final long rialVersionUID =1L;
@TableId(value ="fid",type = IdType.AUTO)
private Long fid;
//这⾥⽤驼峰命名法,不⽤去配置yaml⽂件,直接查询即可
@NonNullqueue
@TableField(value ="url")
private String friendUrl;
}
总结,Java编程需要重视好的编程习惯,尽量使⽤驼峰命名法来命名⼀般的bean属性变量