В Hibernate 3, в классе org.hibernate.cfg.Configuration есть Карта классов свойство, которое содержит объекты типа org.hibernate.mapping.PersistentClass.Где я могу получить карту объектов PersistentClass, которая находилась под org.hibernate.cfg.Configuration в Hibernate 5?
В приложении Grails (которое использует спящий режим под обложками) я расширял класс, расширяющий org.hibernate.cfg.Configuration. Это позволило мне задействовать классы Map и сделайте следующее:
for(PersistentClass pc : classes.values()) {
for(Iterator iterator = pc.getTable().getForeignKeyIterator(); iterator.hasNext();) {
ForeignKey fk = (ForeignKey) iterator.next();
iterator.remove();
}
}
В принципе, я удаление внешних ключей в некоторых таблицах 3-й партии.
Я хочу перейти на Hibernate 5, но новый класс конфигурации не имеет классов Map, от которых я зависим.
Как получить карту объектов PersistentClass, чтобы я мог продолжать удалять их внешний ключ?
Если это не должно быть сделано через конфигурацию больше, как мне получить доступ к постоянным объектам? Через какой класс?
Пожалуйста, помогите. Я застрял.
Возможный дубликат [Hibernate Migration от 4.3.x до 5.x для метода org.hibernate.cfg.Configuration.getClassMapping (className)] (http://stackoverflow.com/questions/32780664/hibernate-migration-from -4-3-x-to-5-x-for-method-org-hibernate-cfg-configuration) – JimmyB
JimmyB это не дубликат. Пожалуйста, прочитайте оба вопроса. У вас есть представление о том, как я могу получить карту всех объектов PersistentClass в Hibernate 5? – Viriato
Для меня это дубликат. Вроде. Ответ на другой вопрос показывает, как удержать «метаданных» с Hibernate. При этом вы должны иметь возможность вызвать, например, '' getEntityBindings() '] (https://docs.jboss.org/hibernate/orm/5.1/javadocs/org/hibernate/boot/Metadata.html#getEntityBindings -), чтобы получить все 'PersistentClass'es. Что еще тебе нужно? – JimmyB