Stackoverflowを検索すると、多くの人が同じ問題を抱えていることがわかりましたが、他の投稿を見て解決策を見つけることができません。それで:
Hibernateクラスを永続化しようとしていますが、エンティティオブジェクトを使用していません。代わりに、マップを使用しています。
これは私の地図です:
Map<String, Object> record;
record = new HashMap<String, Object>();
...
record.put("key1", "value");
record.put("key2", "value");
record.put("field1", "value");
record.put("field2", "value");
record.put("field3", "value");
record.put("field4", "value");
record.put("field5", "value");
record.put("field6", value);
record.put("field7", value);
これはhbm.xmlです
<class entity-name="entity_name" dynamic-update="true">
<composite-id name="Key1Key2" class="classname">
<key-property name="Key1" column="Key1" type="string"/>
<key-property name="Key2" column="Key2" type="string"/>
</composite-id>
<property name="field1" column="field1" type="string"/>
<property name="field2" column="field2" type="string"/>
<property name="field3" column="field3" type="string"/>
<property name="field4" column="field4" type="string"/>
<property name="field5" column="field5" type="string"/>
<property name="field6" column="field6" type="double"/>
<property name="field7" column="field7" type="double"/>
</class>
レコードを永続化しようとすると:
super.session.persist("entity_name", record)
このエラーが返されます:
org.hibernate.id.IdentifierGenerationException:このクラスのIDは、save()を呼び出す前に手動で割り当てる必要があります
誰か助けてもらえますか?少し早いですがお礼を!