在使用jeestite框架开发时,出现Mybatis中resultType个别字段获取数据为null,其他字段正常。
这是bean中获取不到数据的字段:
private String ctBase_ddl; //订单量
private String ctBase_yqphd; //邀请配合度
private String ctBase_dv; // 大V
数据库对应的字段:
ctBase_ddl,ctBase_yqphd,ctBase_dv 和(ct_base_ddl,ct_base_yqphd,ct_base_dv )------两组字段名都试过,出现获取不到数据的情况
对应sql为:
a.ctBase_ddl AS "ctBase_ddl",
a.ctBase_yqphd AS "ctBase_yqphd",
a.ctBase_dv AS "ctBase_dv",
和
a.ct_base_ddl AS "ctBase_ddl",
a.ct_base_yqphd AS "ctBase_yqphd",
a.ct_base_dv AS "ctBase_dv",
--分别对应数据库的两组字段名
经过多次尝试后,发现
方法1.把bean中的字段名中的_符号去掉
bean中获取不到数据的字段:
private String ctBaseDdl;
private String ctBaseYqphd;
private String ctBaseDv;
数据库对应的字段:
ctBase_ddl,ctBase_yqphd,ctBase_dv
对应sql为:
a.ctBase_ddl AS "ctBaseDdl",a.ctBase_yqphd AS "ctBaseYqphd",
a.ctBase_dv AS "ctBaseDv",
方法2.不使用resultType而是通过resultMap完成结果映射,这样bean中字段名带_符号也不会出现这个问题。
bean中获取不到数据的字段:
private String ctBase_ddl; //订单量
private String ctBase_yqphd; //邀请配合度
private String ctBase_dv; // 大V
数据库对应的字段:
ctBase_ddl,ctBase_yqphd,ctBase_dv
对应sql为:
<resultMap type="Person" id="result_person">
<result property="ctBase_ddl" column="ctBase_ddl"/>
<result property="ctBase_yqphd" column="ctBase_yqphd"/>
<result property="ctBase_dv" column="ctBase_dv"/>
</resultMap>
出现的原因,还不清楚。哪位大神清楚原因,欢迎给我留言。万分感谢!!