MySQL に格納されているテーブルと一致する配送情報オブジェクトがありますが、「住所」は (オブジェクト内の) オブジェクトですが、DB テーブル内の AddressId です。私の現在の結果マップは次のようになります。
<resultMap type="ShippingInfo" id="shippingInfoResult">
<result column="orderItemId" property="orderItemId" />
<result column="shipingDate" property="shippingDate" javaType="java.sql.Date" />
<result column="numberShipped" property="numberShipped" />
<result column="carrier" property="carrier" />
<result column="tracking" property="tracking" />
<result column="shippingType" property="shippingType" />
<association property="address" column="addressId" javaType="com.Foo.Bar.address.Address" select="com.Foo.Bar.address.AddressMapper.read" />
</resultMap>
クエリで返された addressId に基づいて MyBatis にアドレスを選択させる方法を見つけようとしていますが、まだ成功していません。現在、私が期待する空の Address オブジェクトではなく、 address の値を null に設定しています。
これを行うことは可能ですか、それともより多くのデータを含めるためにクエリを別の形式にする必要がありますか? 少なくともアドレスフィールドをnullではなく空のアドレスに設定するために、何か別のことをする必要がありますか?
ご協力ありがとうございます。
UPDATE 明確にしたいのですが、addressId に一致するアドレスがある場合は、そのアドレスを問題なく取得して入力します。私が直面している問題は、id が 0 に設定され、クエリがゼロの結果を返す場合です。1 つのインスタンスに対してアドレスを空のアドレス オブジェクトに設定しているように見え、残りはすべて null に設定されています。