博客:https://blog.youkuaiyun.com/PostersXu/article/details/79053916
<select id="queryByID" resultMap="pojoResultMap"> SELECT * FROM <include refid="tableName"/> WHERE order_id = #{id}; </select> <sql id="tableName">tb_order</sql>
<resultMap type="Order" id="pojoResultMap" autoMapping="true"> <id column="order_id" property="orderId"/> <association property="orderShipping" javaType="OrderShipping" column="order_id" select="queryOrderShippingByOrderId" autoMapping="true"></association> <collection property="orderItems" javaType="Arraylist" ofType="OrderItem" autoMapping="true" select="queryOrderItemByOrderId" column="order_id"> </collection> </resultMap> <select id="queryOrderItemByOrderId" resultType="OrderItem" parameterType="String"> SELECT * FROM tb_order_item WHERE order_id = #{orderId}; </select> <select id="queryOrderShippingByOrderId" resultType="OrderShipping" parameterType="String"> SELECT * FROM tb_order_shipping WHERE order_id = #{orderId}; </select>
<!-- 延迟加载配置 -->
<settings>
<!-- 开启字段名和属性名驼峰似的匹配 -->
<setting name="mapUnderscoreToCamelCase" value="true" />
<!-- 开启延迟加载 -->
<setting name="lazyLoadingEnabled" value="true" />
<!-- 按需延迟加载 -->
<setting name="aggressiveLazyLoading" value="false" />
</settings>