Per ottenere column names
, in primo luogo è necessario trovare il properties
dell'entità utilizzando org.hibernate.metadata.ClassMetadata
:
ClassMetadata classMetadata = sessionFactory.getClassMetadata(AppTaskConfig.class);
String[] propertyNames = classMetadata.getPropertyNames();
dove propertyNames
è un array di stringhe che rappresentano i nomi delle proprietà di AppTaskConfig
.
Ora usando Hibernate org.hibernate.cfg.Configuration
oggetto è possibile trovare i nomi delle colonne del properties
:
for (String property : propertyNames) {
Configuration configuration = sessionFactoryBean.getConfiguration();
PersistentClass persistentClass = configuration
.getClassMapping(Details.class.getName());
String columnName = ((Column) persistentClass.getProperty(property)
.getColumnIterator().next()).getName();
}
fonte
2013-10-17 08:16:00
Può fare riferimento qui http://stackoverflow.com/q/2023700/366964 potrebbe aiutare. –