Я пытался перенести код Hibernate 3.0 на 5.4.2 с обновлением Spring с 2.x до 5.x. Мой файл hbm содержит тег «access» для некоторых пользовательских методов получения и установки.
Однако теперь, после обновления, я заметил, что в Hibernate 5 больше нет класса «PropertyAccessor», поэтому в конечном итогенет GETTER или Setter для того же. Как я могу исправить эту проблему для Hibernate 5, который будет делать то же самое, что и раньше?
Я пытался использовать PropertyAccessStrategyResolver
, но не смог получить необходимую функциональность.
Вот фрагментиз моего файла hbm -
<column name="Code1" length="64" not-null="true"/>
</property>
<property name="Code2" type="string" access="datamodel.baseimpl.CodeAccessor">
<column name="Code2" length="64"/>
</property>
<property name="Code3" type="string" access="datamodel.baseimpl.CodeAccessor">
<column name="Code3" length="64"/>
</property>
<property name="Code4" type="string" access="datamodel.baseimpl.CodeAccessor">
<column name="Code4" length="64"/>
</property>
<property name="Code5" type="string" access="datamodel.baseimpl.CodeAccessor">
<column name="Code5" length="64"/>
</property>
Теперь, исходя из того, какое свойство я устанавливаю, основываясь на номере кода, я получаю соответствующие методы получения и установки. Мой класс datamodel.baseimpl.CodeAccessor реализует org.hibernate.property.PropertyAccessor