vehicleVO に入力する結果マップを作成しようとしています。いくつかの列を vehicleDocuments HashMap にマップしたいと考えています。データを入力するデータも同じテーブルに存在しています。
public class VehicleVO implements Serializable {
public String vehicleId;
public String vehicleNumber;
public String model;
public Map<String, Date> vehicleDocuments;
public TransportVO transport;
public String distanceTraveled;
}
マッピングに次のxmlを使用しようとしています。しかし、うまくいかないようです。私はこのエラーを取得します
「要素型 "resultMap" の内容は、"(constructor?,id*,result*,association*,collection*,discriminator?)" と一致する必要があります。
<resultMap id="BaseResultMap" type="com.svms.service.vo.VehicleVO">
<id column="vehicle_id" jdbcType="BIGINT" property="vehicleId" />
<result column="vehicle_no" jdbcType="VARCHAR" property="vehicleNumber" />
<result column="Model" jdbcType="VARCHAR" property="model" />
<association property="vehicleDocuments" javaType="java.util.HashMap">
<result column="FC" jdbcType="DATE" property="FC_TD" />
<result column="TAX" jdbcType="DATE" property="TAX_TD" />
<result column="Insureance" jdbcType="DATE" property="INSURANCE_TD" />
<result column="Form47" jdbcType="DATE" property="FORM47_TD" />
<result column="NC" jdbcType="DATE" property="NC_TD" />
</association>
<result column="total_distance" jdbcType="INTEGER" property="distanceTraveled" />
<result column="transport_id" jdbcType="BIGINT" property="transportId" />
</resultMap>
私の理解が正しければ、 hashMap にマッピングしようとすることも、関連付けマッピングと見なすことができます。ただし、これは 1 対 1 のマッピングのみです。<collection>
マッピング用のタグも使用してみました。それでも同じエラーが発生します。