Example usage for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaDialect

List of usage examples for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaDialect

Introduction

In this page you can find the example usage for org.springframework.orm.jpa LocalContainerEntityManagerFactoryBean setJpaDialect.

Prototype

public void setJpaDialect(@Nullable JpaDialect jpaDialect) 

Source Link

Document

Specify the vendor-specific JpaDialect implementation to associate with this EntityManagerFactory.

Usage

From source file:fr.univlorraine.mondossierweb.config.JpaConfig.java

/**
 * EntityManager Factory/*w  w  w. j av  a  2 s  .  c  o m*/
 * @return
 */
@Bean
@DependsOn("flyway")
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    LocalContainerEntityManagerFactoryBean localContainerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
    localContainerEntityManagerFactoryBean.setPersistenceUnitName(PERSISTENCE_UNIT_NAME);
    localContainerEntityManagerFactoryBean.setPackagesToScan(Favoris.class.getPackage().getName());
    localContainerEntityManagerFactoryBean.setDataSource(dataSource());
    localContainerEntityManagerFactoryBean.setJpaDialect(new EclipseLinkJpaDialect());

    Properties jpaProperties = new Properties();
    /* Active le static weaving d'EclipseLink */
    jpaProperties.put(PersistenceUnitProperties.WEAVING, "static");
    /* Dsactive le cache partag */
    jpaProperties.put(PersistenceUnitProperties.CACHE_SHARED_DEFAULT, String.valueOf(false));
    localContainerEntityManagerFactoryBean.setJpaProperties(jpaProperties);

    EclipseLinkJpaVendorAdapter jpaVendorAdapter = new EclipseLinkJpaVendorAdapter();
    jpaVendorAdapter.setGenerateDdl(false);
    jpaVendorAdapter.setShowSql(false);
    localContainerEntityManagerFactoryBean.setJpaVendorAdapter(jpaVendorAdapter);

    return localContainerEntityManagerFactoryBean;
}

From source file:fr.paris.lutece.portal.service.jpa.JPAStartupService.java

/**
 * Initialize JPA objects (Datasource, Persistence Unit Manager, Entity Manager Factory,
 * Transaction Manager) for each pool.//  ww  w .jav  a 2 s.  co  m
 */
public void process() {
    ReferenceList list = new ReferenceList();
    AppConnectionService.getPoolList(list);

    Map<String, EntityManagerFactory> mapFactories = new HashMap<String, EntityManagerFactory>();
    List<PlatformTransactionManager> listTransactionManagers = new ArrayList<PlatformTransactionManager>();
    _log.info("JPA Startup Service : Initializing JPA objects ...");

    String strDialectProperty = AppPropertiesService.getProperty(JPA_DIALECT_PROPERTY);

    for (ReferenceItem poolItem : list) {
        String strPoolname = poolItem.getCode();

        DataSource ds = AppConnectionService.getPoolManager().getDataSource(strPoolname);
        _log.info("JPA Startup Service : DataSource retrieved for pool : " + strPoolname);
        _log.debug("> DS : " + ds.toString());

        DefaultPersistenceUnitManager pum = new DefaultPersistenceUnitManager();
        pum.setDefaultDataSource(ds);

        PersistenceUnitPostProcessor[] postProcessors = { new JPAPersistenceUnitPostProcessor() };
        pum.setPersistenceUnitPostProcessors(postProcessors);

        pum.afterPropertiesSet();

        _log.info("JPA Startup Service : Persistence Unit Manager for pool : " + strPoolname);
        _log.debug("> PUM : " + pum.toString());

        LocalContainerEntityManagerFactoryBean lcemfb = new LocalContainerEntityManagerFactoryBean();
        lcemfb.setDataSource(ds);
        lcemfb.setPersistenceUnitManager(pum);
        lcemfb.setPersistenceUnitName("jpaLuteceUnit");

        JpaDialect jpaDialect = (JpaDialect) SpringContextService.getBean("jpaDialect");
        lcemfb.setJpaDialect(jpaDialect);

        Map mapJpaProperties = (Map) SpringContextService.getBean("jpaPropertiesMap");
        lcemfb.setJpaPropertyMap(mapJpaProperties);

        String strDialect = AppPropertiesService.getProperty(poolItem.getName() + ".dialect");

        // replace default dialect if <poolname>.dialect is specified
        if (StringUtils.isNotBlank(strDialect)) {
            mapJpaProperties.put(strDialectProperty, strDialect);
        }

        _log.debug("Using dialect " + mapJpaProperties.get(strDialectProperty) + " for pool "
                + poolItem.getName());

        JpaVendorAdapter jpaVendorAdapter = (JpaVendorAdapter) SpringContextService.getBean("jpaVendorAdapter");
        lcemfb.setJpaVendorAdapter(jpaVendorAdapter);

        lcemfb.afterPropertiesSet();

        EntityManagerFactory emf = lcemfb.getNativeEntityManagerFactory();
        _log.info("JPA Startup Service : EntityManagerFactory created for pool : " + strPoolname);
        _log.debug("> EMF : " + emf.toString());

        JpaTransactionManager tm = new JpaTransactionManager();
        tm.setEntityManagerFactory(emf);
        tm.setJpaDialect(jpaDialect);
        _log.debug("> JpaDialect " + jpaDialect);
        tm.afterPropertiesSet();
        _log.info("JPA Startup Service : JPA TransactionManager created for pool : " + strPoolname);
        _log.debug("> TM : " + tm.toString());

        mapFactories.put(strPoolname, emf);
        listTransactionManagers.add(tm);
    }

    EntityManagerService ems = (EntityManagerService) SpringContextService.getBean("entityManagerService");
    ems.setMapFactories(mapFactories);

    ChainedTransactionManager ctm = (ChainedTransactionManager) SpringContextService
            .getBean("transactionManager");
    ctm.setTransactionManagers(listTransactionManagers);
    _log.info("JPA Startup Service : completed successfully");
}

From source file:org.cambillaum.jpapersistor.persistence.configuration.PersistenceConfiguration.java

@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
    LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
    entityManagerFactory.setDataSource(dataSource());
    Properties jpaProperties = new Properties();
    jpaProperties.put("hibernate.show.sql", "true");
    jpaProperties.put("hibernate.hbm2ddl.auto", "create-drop");
    entityManagerFactory.setJpaProperties(jpaProperties);
    entityManagerFactory.setJpaVendorAdapter(jpaVendorAdapter());
    JpaDialect jpaDialect = new HibernateJpaDialect();
    entityManagerFactory.setJpaDialect(jpaDialect);
    entityManagerFactory.setPackagesToScan("org.cambillaum.jpapersistor");
    return entityManagerFactory;
}