a表数据,b表数据一对多 字段如下 ,查询语句为 select * from a;
a id name
b id aid name
mapper配置如下
<resultMap id="BaseResultMap" type="com.example.demo.aa">
<id property="id" column="id" jdbcType="INTEGER"/>
<result property="name" column="name" jdbcType="VARCHAR"/>
<collection property="bb" javaType="java.util.List" resultMap="bbMap"/>
</resultMap>
<resultMap id="bbMap" type="com.example.demo.bb">
<id property="id" column="iid" jdbcType="INTEGER"/>
<result property="aid" column="aid" jdbcType="INTEGER"/>
<result property="name" column="name" jdbcType="VARCHAR"/>
</resultMap>
返回信息如下
{
"id": 5,
"name": "test",
"blist"[
{
"id": null,
"bid": null,
"name": null
}]
}
如果按照这个mapper配置,我只查询a表的时候,返回数据怎么才能只返回a的信息而不带有blist的信息
blist都为空?加个 @ JsonInclude(JsonInclude.Include.NON_NULL)注解试试,空的就不显示了
把这行删了 不就没有b的数据了
查询指定列 select id,name from a