<select id="findAdverts" resultMap="advertMap"> SELECT a.*, p.id AS position_id, p.name AS position_name, m.id AS media_id, m.file_name, m.file_type, m.file_url FROM advert a LEFT JOIN ad_position p ON a.position_id = p.id LEFT JOIN media_file m ON a.media_id = m.id WHERE (id = :id OR :id IS NULL) </select>和<resultMap id="advertMap" type="com.ruifan.taihaolian.biz.model.dto.AdvertDTO"> <id property="id" column="id"/> <result property="name" column="name"/> <association property="adPosition" javaType="com.ruifan.taihaolian.biz.model.AdPosition"> <id property="id" column="position_id"/> <result property="name" column="position_name"/> </association> <association property="mediaFile" javaType="com.ruifan.taihaolian.biz.model.MediaFile"> <id property="id" column="id"/> <result property="fileName" column="name"/> <result property="fileType" column="type"/> <result property="fileUrl" column="url"/> </association> </resultMap>对吗?
时间: 2023-12-05 09:48:38 浏览: 68
mybatis的mapper.xml中resultMap标签的使用详解
5星 · 资源好评率100%
这是一个 MyBatis 的 XML 映射文件,其中包含了一个名为 findAdverts 的 SQL 查询语句和一个名为 advertMap 的结果映射。SQL 查询语句使用了 LEFT JOIN 连接 advert、ad_position 和 media_file 三张表,通过 WHERE 子句对查询进行筛选。结果映射定义了 AdvertDTO、AdPosition 和 MediaFile 三个类之间的关系,其中 AdvertDTO 包含了 id、name、adPosition 和 mediaFile 四个属性,分别对应 advert 表的 id 和 name 字段,ad_position 表的 id 和 name 字段,以及 media_file 表的 id、name、type 和 url 字段。
阅读全文