@Autowired private LocalSessionFactoryBean localSessionFactoryBean; @Bean(name = "hibernateConfig") public org.hibernate.cfg.Configuration getConfig() { return localSessionFactoryBean.getConfiguration(); }
@Autowired private LocalSessionFactoryBean localSessionFactoryBean; @Bean public DataSource getDataSource() { //return the data source here } @Bean(name = "hibernateConfig") public org.hibernate.cfg.Configuration getConfig() { return localSessionFactoryBean.getConfiguration(); }
@Autowired public HibernateAwareObjectMapper(LocalSessionFactoryBean sessionFactoryBean) { Hibernate4Module hibernate4Module = new Hibernate4Module(sessionFactoryBean.getConfiguration().buildMapping()); hibernate4Module.configure(Hibernate4Module.Feature.SERIALIZE_IDENTIFIER_FOR_LAZY_NOT_LOADED_OBJECTS, true); registerModule(hibernate4Module); }
@Component public class SchemaExportListener extends AbstractEnvironment implements ApplicationListener<ContextRefreshedEvent> { @Autowired private LocalSessionFactoryBean localSessionFactoryBean; @Override public void onApplicationEvent(ContextRefreshedEvent event) { log.debug("onApplicationEvent"); if (isPrintSchemaEnabled()) { log.info("printing schema"); SchemaExport schema = new SchemaExport(localSessionFactoryBean.getConfiguration()); schema.setDelimiter(BaseConstants.SEMI_COLON);
@BeforeMethod public void setupSchema() { LocalSessionFactoryBean session = (LocalSessionFactoryBean) context.getBean("&sessionFactory"); SchemaExport export = new SchemaExport(session.getConfiguration()); export.drop(false, true); export.create(false, true); }
Iterator iterator = sessionFactoryBean.getConfiguration().getCollectionMappings();
@Override public Object doInHibernate(Session session) throws HibernateException, SQLException { Connection con = session.connection(); DatabaseMetadata metadata = new DatabaseMetadata(con, dialect, false); getConfiguration().validateSchema(dialect, metadata); return null; } }
@Override public Object doInHibernate(Session session) throws HibernateException, SQLException { Connection con = session.connection(); String[] sql = getConfiguration().generateDropSchemaScript(dialect); executeSchemaScript(con, sql); return null; } }
public ConfiguredOrmPersistenceUnit<SessionFactory, Configuration> getConfiguredOrmPersistenceUnit(Object testObject, OrmConfig entityManagerConfig) { LocalSessionFactoryBean factoryBean = createSessionFactoryBean(testObject, entityManagerConfig); SessionFactory entityManagerFactory = (SessionFactory) factoryBean.getObject(); Configuration hibernateConfiguration = factoryBean.getConfiguration(); return new ConfiguredOrmPersistenceUnit<SessionFactory, Configuration>(entityManagerFactory, hibernateConfiguration); }
@Autowired private LocalSessionFactoryBean sessionFactoryBean; @PostConstruct public void init() throws ClassNotFoundException { SessionFactoryImplementor sessionFactory = (SessionFactoryImplementor) sessionFactoryBean.getObject(); SessionFactoryServiceRegistry serviceRegistry = (SessionFactoryServiceRegistry)sessionFactory.getServiceRegistry(); Configuration configuration = sessionFactoryBean.getConfiguration(); new JpaIntegrator().integrate(configuration, sessionFactory, serviceRegistry); }
public ConfiguredOrmPersistenceUnit<SessionFactory, Configuration> getConfiguredPersistenceUnit(Object testObject) { LocalSessionFactoryBean factoryBean = getSessionFactoryBean(testObject); SessionFactory entityManagerFactory = (SessionFactory) factoryBean.getObject(); Configuration hibernateConfiguration = factoryBean.getConfiguration(); return new ConfiguredOrmPersistenceUnit<SessionFactory, Configuration>(entityManagerFactory, hibernateConfiguration); }
@Override public Object doInHibernate(Session session) throws HibernateException, SQLException { Connection con = session.connection(); String[] sql = getConfiguration().generateSchemaCreationScript(dialect); executeSchemaScript(con, sql); return null; } }
@SuppressWarnings("deprecation") @Override public Dialect getObject() throws SQLException { Session session = ((SessionFactory) this.localSessionFactory.getObject()).openSession(); Configuration cfg = this.localSessionFactory.getConfiguration(); Connection con = null; try { // make sure that we AUTO-COMMIT con = session.connection(); con.setAutoCommit(true); DatabaseMetaData meta = con.getMetaData(); Dialect dialect = DialectFactory.buildDialect(cfg.getProperties(), meta.getDatabaseProductName(), meta .getDatabaseMajorVersion()); dialect = changeDialect(cfg, dialect); return dialect; } finally { try { con.close(); } catch (Exception e) { } } }
@Override public Object doInHibernate(Session session) throws HibernateException, SQLException { Connection con = session.connection(); DatabaseMetadata metadata = new DatabaseMetadata(con, dialect); String[] sql = getConfiguration().generateSchemaUpdateScript(dialect, metadata); executeSchemaScript(con, sql); return null; } }