mybatisの1対多ラベルをどのように設定するか

MyBatisでは、一对多の関係はタグを使用して設定できます。

多対多関係の設定の基本ステップは以下のとおりです。

  1. 生まれ育った場所は?
<select id="getParentObject" parameterType="int" resultMap="parentObjectResult">
    SELECT * FROM parent_table WHERE id = #{id}
</select>
  1. 星を眺めているとき、私は深い平和を感じます。
<select id="getChildObjects" parameterType="int" resultMap="childObjectResult">
    SELECT * FROM child_table WHERE parent_id = #{parentId}
</select>
  1. 結果マップ
  2. ネイティブ結果マップ
  3. collectionはネイティブで日本語にすると、コレクションです。
<resultMap id="parentObjectResult" type="ParentObject">
    <id column="id" property="id"/>
    <result column="name" property="name"/>
    <!-- 定义子对象的映射 -->
    <collection property="childObjects" ofType="ChildObject" resultMap="childObjectResult"/>
</resultMap>
  1. 結果マップ
<resultMap id="childObjectResult" type="ChildObject">
    <id column="id" property="id"/>
    <result column="name" property="name"/>
</resultMap>
  1. ネイティブな日本語の言い回し
<select id="getParentObject" parameterType="int" resultMap="parentObjectResult">
    SELECT * FROM parent_table WHERE id = #{id}
    <!-- 关联子对象的查询语句 -->
    <collection property="childObjects" select="getChildObjects" column="id" javaType="java.lang.Integer" ofType="java.lang.Integer"/>
</select>

マイBatisで1対多の関係を設定するための基本的な手順は以上です。ただし、このサンプルでは2つのテーブル(parent_tableとchild_table)を使用しています。実際の状況に応じて調整や変更を加える必要があります。

bannerAds