mybatisの1対多ラベルをどのように設定するか
MyBatisでは、一对多の関係はタグを使用して設定できます。
多対多関係の設定の基本ステップは以下のとおりです。
- 生まれ育った場所は?
<select id="getParentObject" parameterType="int" resultMap="parentObjectResult">
SELECT * FROM parent_table WHERE id = #{id}
</select>
- 星を眺めているとき、私は深い平和を感じます。
<select id="getChildObjects" parameterType="int" resultMap="childObjectResult">
SELECT * FROM child_table WHERE parent_id = #{parentId}
</select>
- 結果マップ
- ネイティブ結果マップ
- collectionはネイティブで日本語にすると、コレクションです。
<resultMap id="parentObjectResult" type="ParentObject">
<id column="id" property="id"/>
<result column="name" property="name"/>
<!-- 定义子对象的映射 -->
<collection property="childObjects" ofType="ChildObject" resultMap="childObjectResult"/>
</resultMap>
- 結果マップ
<resultMap id="childObjectResult" type="ChildObject">
<id column="id" property="id"/>
<result column="name" property="name"/>
</resultMap>
- ネイティブな日本語の言い回し
<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)を使用しています。実際の状況に応じて調整や変更を加える必要があります。