отношение один ко многим, используя mybatis или ibatis
У меня есть база данных, которая имеет две таблицы
post:
id
post_name
post_desc
files:
file_id
file_name
post_attachments
post_id
file_id
В моем картографировании XML у меня уже есть
<select id="selectPosts" resultType="com.mycom.myproject.bean.postBean">
select id, post_name as postName from post
</select>
Так что это один ко многим реалиям. Я хочу, чтобы все файлы были прикреплены к сообщению. Я не понимаю, как я могу сделать отображение в mybatis.
Мне нравится мой PostBean
public class PostBean extends Post {
private List<FileAttachment> filesAttachment;
//getter setter
}
Я использую Mybatis с Spring и MySQL в качестве базы данных Пожалуйста, дайте мне знать, если вам нужно что-нибудь еще.
--update--
Я изменил свой mapper.xml как
<resultMap id="BaseResultMap" type="com.mycom.myproject.db.mybatis.model.post">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Sep 11 10:14:08 BST 2012.
-->
<id column="id" jdbcType="BIGINT" property="id" />
<result column="post_name" jdbcType="VARCHAR" property="postName" />
<collection property="filesAttachment" ofType="com.mycom.myproject.db.mybatis.model.FileAttachment">
<id property="fileId" column="file_id" />
<id property="fileName" column="file_name" />
</collection>
--- update2 ---
На самом деле у меня есть одна таблица сопоставления, которую я создал выше, поэтому мой запрос
<select id="selectPosts" parameterType="string" resultType="com.mycom.myproject.bean.postBean">
select p.id, p.post_name, fa.file_id as fileId, fa.file_name as fileName from post p
left outer join files f on f.post_id = p.id join post_attachments pa on pa.file_id = f.post_id
where p.id = 371
</select>