当前位置:   article > 正文

Mybatis结果集映射(一) 对象嵌套对象_mybatis 对象嵌套对象

mybatis 对象嵌套对象
   如果mybatis查询返回的对象中里面还嵌套着其它对象,那么就需要结果集映射。
   例如我们要从数据库表中查询ExportOperationsVo的id, operationTime, operator.userId和receiver.userId。
  • 1
  • 2

实体类:

public class ExportOperationsVo {
	private String id;
	private ExportUserVo operator;  //嵌套ExportUserVo对象
	private Date operationTime;
    private ExportUserVo receiver;  //嵌套ExportUserVo对象
    }
public class ExportUserVo {
	private String userId;
	private String username;
	private String departmentId;
	private String departmentName;
	}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

dao层接口:

 public ExportOperationsVo getExportOperationsVoById(@Param("id") String id);
  • 1

XML:

<select id="getExportOperationsVoById"
		resultMap="ExportOperationMap">
		select
		id,
		src_operator_id,
		des_operator_id,
		operation_time,
		from operation_table
		where id=#{id}
	</select>
	<resultMap id="ExportOperationMap"
		type="ExportOperationsVo的全限定类名">
		<result column="id" property="id" />
		<!--operation_time为数据库表字段,对应ExportOperationsVo的operationTime属性-->
		<result column="operation_time" property="operationTime" />
		<association property="receiver"
			javaType="ExportUserVo全限定类名">
			<result column="des_operator_id" property="userId" />
		</association>
		<!--des_operator_id为数据库表字段,对应receiver的userId属性-->
		<association property="operator"
			javaType="ExportUserVo全限定类名">
			<result column="src_operator_id" property="userId" />
		</association>
	</resultMap>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

注意resultMap中要按照 的顺序写,不然会报错

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/870320
推荐阅读
相关标签
  

闽ICP备14008679号