mybatis javabean字段與數據庫字段的映射


結論:未作映射的字段沒有值,但是數據庫中實際是有值的,說明如果帶下划線的字段未作映射,返回值是不會有值的,只有映射了的字段以及不帶下划線的字段(默認映射)才有返回值

 

1、bean屬性

public class KnowledgeAttr {
private Integer Id; //不許為空
private Integer pointId; //不許為空 知識元id
private Integer domainAttrId; //不許為空 知識元屬性id
private String attrName; // 知識元屬性名稱
private String attrValue;
private Integer attrState; //不許為空
private String attrValueFinal; // 知識元屬性值
private String uuid;

2、數據庫返回值映射,此處只映射了2個字段,(因為我們只需要這兩個字段),可以看到還有幾個字段帶下划線沒有映射。
@Select("SELECT * FROM KNOWLEDGE_POINT_ATTR WHERE POINT_ID=#{pointId}")
@Results(value = {
@Result(property = "attrName", column = "ATTR_NAME"),
@Result(property = "attrValueFinal", column = "ATTR_VALUE_FINAL")})
List<KnowledgeAttr> getRepeatJudge(Integer pointId);

3、controller調用返回對象KnowledgeAttr,如果正常,只有不帶下划線的字段和已經映射到字段才有值
List<KnowledgeAttr> nameAndValueList = insertDataService.getRepeatJudge(knowledgePoint.getId());

4、可以看到返回值做了映射的 attrName,attrValueFinal 有值,未作映射的domainAttrId沒有值,但是數據庫中實際是有值的,說明如果帶下划線的字段未作映射,返回值是不會有值的!!

 

 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM