Ambiguous collection type for property ‘ ‘. You must specify ‘javaType‘ or ‘resultMap‘解决方案
Ambiguous collection type for property 'salesDetailList'. You must specify 'javaType' or 'resultMap'解决方案使用mybatis做数据库查询映射,在做一对多映射时:<resultMap id="detailList" type="com.whu.letao_server.entity.Total
·
Ambiguous collection type for property 'salesDetailList'. You must specify 'javaType' or 'resultMap'解决方案
使用mybatis做数据库查询映射,在做一对多映射时:
<resultMap id="detailList" type="com.whu.letao_server.entity.TotalSalesDetail">
<result column="p_name" property="name"/>
<collection property="salesDetailList" ofType="com.whu.letao_server.entity.SalesDetail">
<result column="s_amount" property="saleAmount"/>
<result column="v_volume" property="volume"/>
</collection>
</resultMap>
出现标题中的错误。网上有很多可能可以解决的办法,对我的错误都没有任何作用,后来自己修改代码才解决,让人不禁感叹:遇到报错了别第一时间复制粘贴然后百度,自己照着报错信息改不行吗!不过这也不能怪我,因为我是第一次用mybatis,所以我的一对多映射完全照着网上写的,collection标签只按照网上一些简单实例写了poperty属性和ofType属性,所以报这个错!很简单,只要按报错提示加一个javaType就好了!至于这个属性填什么,我的一对多查询返回的属性应该是一个List,所以直接写List,即代码应该是这样的:
<resultMap id="detailList" type="com.whu.letao_server.entity.TotalSalesDetail">
<result column="p_name" property="name"/>
<collection property="salesDetailList" ofType="com.whu.letao_server.entity.SalesDetail" javaType="java.util.List">
<result column="s_amount" property="saleAmount"/>
<result column="v_volume" property="volume"/>
</collection>
</resultMap>
直接解决问题。当然,如果这样解决不了,就请检查自己对应的实体类属性里有没有写setter,或者一些其他问题。
更多推荐
所有评论(0)