В момента се опитваме да преместим нашето уеб приложение от Wildfly 9.0.2 към Wildfly 10.1.0 и така мигрираме от Hibernate 4.3.10 към 5.0.10.
Никога не сме дефинирали собствен NamingStrategy
, използвайки каквито имена Hibernate избере за нашите обекти (нашата база данни Postgresql е изградена чрез hbm2ddl
).
Сега, с Hibernate 5, имаме грешки в неизвестни колони, тъй като конвенцията за именуване изглежда се е променила. По-конкретно, в обединените таблици имената на колоните вече се основават на истински клас вместо на родител: например, когато имаме UserEntity
, което наследява от AgentEntity
, преди да получим agentEntity_id
колона, сега е userEntity_id
колона.
Опитвам четирите съществуващи Hibernate ImplicitNamingStrategies
(jpa, legacy-jpa, legacy-hbm и component-path) в нашия persistence.xml
, без успех: всеки се различава от старата стратегия.
И така, има ли начин да избегна пренаписването на моята собствена стратегия, за да поддържам съответствие с нашия стар модел?