private SessionFactory createSessionFactory() throws Exception { LocalSessionFactoryBean factoryBean = new LocalSessionFactoryBean(); factoryBean.setDataSource(getDataSource()); factoryBean.setMappingLocations(new Resource[] { new ClassPathResource("Foo.hbm.xml", getClass()) }); factoryBean.afterPropertiesSet(); return factoryBean.getObject(); }
this.dataSource, getResourceLoader(), getMetadataSources()); Resource mr = new ClassPathResource(mapping.trim(), getResourceLoader().getClassLoader()); sfb.addInputStream(mr.getInputStream()); this.sessionFactory = buildSessionFactory(sfb);
private static LocalSessionFactoryBean generateSessionFactoryBean(String[] basePackage, DataSource dataSource, Properties hibernateProperties) { LocalSessionFactoryBean localSessionFactoryBean = new LocalSessionFactoryBean(); localSessionFactoryBean.setDataSource(dataSource); localSessionFactoryBean.setPackagesToScan(basePackage); localSessionFactoryBean.setHibernateProperties(hibernateProperties); // Added the below line localSessionFactoryBean.afterPropertiesSet(); return localSessionFactoryBean; }
@Bean public LocalSessionFactoryBean sessionFactory() throws RepositoryServiceFactoryException { LocalSessionFactoryBean bean = new LocalSessionFactoryBean(); bean.setDataSource(dataSourceFactory.createDataSource()); hibernateProperties.setProperty("hibernate.hql.bulk_id_strategy", "org.hibernate.hql.spi.id.inline.InlineIdsOrClauseBulkIdStrategy"); bean.setHibernateProperties(hibernateProperties); bean.setImplicitNamingStrategy(midPointImplicitNamingStrategy()); bean.setPhysicalNamingStrategy(midPointPhysicalNamingStrategy()); bean.setAnnotatedPackages("com.evolveum.midpoint.repo.sql.type"); bean.setPackagesToScan( "com.evolveum.midpoint.repo.sql.data.common", "com.evolveum.midpoint.repo.sql.data.common.any", "com.evolveum.midpoint.repo.sql.data.common.type", "com.evolveum.midpoint.repo.sql.data.audit"); bean.setEntityInterceptor(entityStateInterceptor());
@Configuration public class BeanFactory { @Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean bean = new LocalSessionFactoryBean(); bean.setNamingStrategy(getNamingStrategy()); bean.setMappingResources(Arrays.asList(getPerson()); bean.setHibernateProperties(new Properties() {{ setProperty("hibernate.dialect", "org.hibernate.dialect.HSQLDialect"); setProperty("hibernate.show_sql", "true") setProperty("hibernate.hbm2ddl.auto", "create"); }}); bean.setDataSource(dataSource()); return bean; } @Bean public DataSource dataSource() { .... }
@Value("${spring.datasource.url}") private String jdbcURl; @Value("${spring.datasource.username}") private String dbUsername; @Value("${spring.datasource.password}") private String dbPassword; @Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setDataSource(dataSource()); sessionFactory.setPackagesToScan(new String[] { "your package" }); return sessionFactory; } @Bean(name = "dataSource") public DataSource dataSource() { BasicDataSource dataSource = new BasicDataSource(); dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl(jdbcURl); dataSource.setUsername(dbUsername); dataSource.setPassword(dbPassword); return dataSource }
public class HibernateSessionRequestFilter implements Filter { private static Logger log = LoggerFactory.getLogger(HibernateSessionRequestFilter.class); private static ThreadLocal<LocalSessionFactoryBean> lsfbth = new ThreadLocal<LocalSessionFactoryBean>(); private static final Map<Object, DataSource> datasourceMap = new HashMap<>(); public void init(FilterConfig filterConfig) throws ServletException { log.debug("Initializing filter..."); LocalSessionFactoryBean lsfb = new LocalSessionFactoryBean(); lsfb.setHibernateProperties(null); // TODO: add correct values lsfbth.set(lsfb); } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { LocalSessionFactoryBean lsfb = lsfbth.get(); String credentials = null; //TODO: get user login from request DataSource dataSource = datasourceMap.get(credentials); if( dataSource==null){ // TODO: build datasource here datasourceMap.put(credentials, dataSource); } lsfb.setDataSource(dataSource); SessionFactory sf = lsfb.getObject();
@Bean public LocalSessionFactoryBean sessionFactory(DataSource ds) throws ClassNotFoundException { LocalSessionFactoryBean localSessionFactoryBean = new LocalSessionFactoryBean(); localSessionFactoryBean.setDataSource(dataSource()); ... // Other settings here return localSessionFactoryBean; }
@Configuration @EnableTransactionManagement public class HibernateConfigurationFactory { @Autowired Environment env; @Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setPackagesToScan("com.foo.bar"); if (env.containsProperty("some.extra.classes.property") { sessionFactory.setAnnotatedClasses(some extrapolation here); // Or similarly add extra packages for scanning ... } } }
@Autowired @Bean public LocalSessionFactoryBean getSessionFactoryBean(DataSource dataSource) { LocalSessionFactoryBean localSessionFactoryBean = new LocalSessionFactoryBean(); sessionFactory.setDataSource(this.getDataSource()); //sessionFactory.setHibernateProperties(this.hibernateProperties()); return localSessionFactoryBean; }
@Autowired private ResourceLoader rl; @Bean public LocalSessionFactoryBean sessionFactory() throws IOException { LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean(); sessionFactoryBean.setMappingLocations(loadResources()); } public Resource[] loadResources() { Resource[] resources = null; try { resources = ResourcePatternUtils.getResourcePatternResolver(rl) .getResources("classpath:/hibernate/*.hbm.xml"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return resources; }
@Scope(value = "singleton") /* Actually, default is singleton */ public SessionFactory sessionFactory() { LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setConfigLocation("classpath:hibernate.cfg.xml"); return sessionFactory();
private void outputDdl(String packageName, String dialect, String fileName) { LocalSessionFactoryBean sfBean = sfBean(packageName, dialect); StandardServiceRegistry serviceRegistry = sfBean.getConfiguration().getStandardServiceRegistryBuilder().build(); try { String outputFile = OutputRoot + fileName; Files.deleteIfExists(Paths.get(outputFile)); Metadata metadata = metadata(serviceRegistry, sfBean.getMetadataSources()); SchemaExport export = new SchemaExport(); export.setDelimiter(";"); export.setFormat(FormatSql); export.setOutputFile(outputFile); export.create(EnumSet.of(TargetType.SCRIPT, TargetType.STDOUT), metadata); } catch (Exception e) { throw new InvocationException(e); } finally { StandardServiceRegistryBuilder.destroy(serviceRegistry); } }
@Override public void afterPropertiesSet() throws IOException { // Add any properties from HibernateConfig to any values configured using hibernateProperties if (hibernateConfig != null) { getHibernateProperties().putAll(hibernateConfig.getHibernateProperties()); } super.afterPropertiesSet(); } }
this.dataSource, getResourceLoader(), getMetadataSources()); Resource mr = new ClassPathResource(mapping.trim(), getResourceLoader().getClassLoader()); sfb.addInputStream(mr.getInputStream());
@Bean public HibernateTransactionManager transactionManager() throws RepositoryServiceFactoryException { HibernateTransactionManager htm = new HibernateTransactionManager(); htm.setSessionFactory(sessionFactory().getObject()); return htm; } }
@Override protected SessionFactory buildSessionFactory(LocalSessionFactoryBuilder sfb) { Properties properties = sfb.getProperties(); sfb.registerTypeOverride(createZonalTimestampType(properties)); return super.buildSessionFactory(sfb); }
@Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setDataSource(dataSource()); sessionFactory.setPackagesToScan(new String[] { "com.bridge.compaignspring.model" }); sessionFactory.setHibernateProperties(hibernateProperties()); return sessionFactory; }
LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean(); ...... sessionFactoryBean.setHibernateProperties(getHibernateProperties()); System.out.println("Session Factory Init");
LocalSessionFactoryBean lsfb = new LocalSessionFactoryBean();