Example usage for org.springframework.jdbc.datasource.init DataSourceInitializer setDatabasePopulator

List of usage examples for org.springframework.jdbc.datasource.init DataSourceInitializer setDatabasePopulator

Introduction

In this page you can find the example usage for org.springframework.jdbc.datasource.init DataSourceInitializer setDatabasePopulator.

Prototype

public void setDatabasePopulator(DatabasePopulator databasePopulator) 

Source Link

Document

Set the DatabasePopulator to execute during the bean initialization phase.

Usage

From source file:ctv.stageissue.Application.java

@Bean
public DataSource dataSource() {
    HikariConfig config = new HikariConfig();
    config.setDataSourceClassName("org.h2.jdbcx.JdbcDataSource");
    config.setConnectionTestQuery("VALUES 1");
    config.addDataSourceProperty("url", "jdbc:h2:~/test");
    config.addDataSourceProperty("user", "sa");
    config.addDataSourceProperty("password", "");
    HikariDataSource dataSource = new HikariDataSource(config);

    DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(
            new ResourceDatabasePopulator(false, false, null, new ClassPathResource("model.sql")));
    initializer.setEnabled(true);// w  w  w.j a  v a  2s .c  o  m
    initializer.afterPropertiesSet();

    return dataSource;
}

From source file:org.jblogcms.core.config.PersistenceContext.java

@Bean
public DataSourceInitializer databasePopulator() {
    ResourceDatabasePopulator populator = new ResourceDatabasePopulator();
    populator.addScript(/*from www.  ja v  a 2 s . co  m*/
            new ClassPathResource("org/springframework/social/connect/jdbc/JdbcUsersConnectionRepository.sql"));
    populator.setContinueOnError(true);

    DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDatabasePopulator(populator);
    initializer.setDataSource(dataSource());

    return initializer;
}

From source file:br.com.devmedia.cleancode.spring.ConfiguracaoBancoDados.java

@Bean
public DataSourceInitializer dataSourceInitializer(final DataSource dataSource) {
    final DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(databasePopulator());
    return initializer;
}

From source file:ch.thp.proto.spring.time.infra.config.DatabaseConfig.java

@Inject
@Bean//from  w  w w .  jav a 2 s .  c  om
public DataSourceInitializer dataSourceInitializer(final DataSource dataSource, List<DataLoader> loaders) {
    //in this example we don't have a classic script based populator
    final DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(databasePopulator());
    initializer.setDatabaseCleaner(databaseCleaner());
    //instead we use the dataloader
    loaders.stream().forEach((loader) -> {
        loader.load();
    });
    return initializer;
}

From source file:ch.thp.proto.ws.spring.batch.infrastructure.DatabaseConfig.java

@Autowired(required = false)
@Bean/*from   ww  w . j  a va 2s .co m*/
public DataSourceInitializer dataSourceInitializer(final DataSource dataSource, List<DataLoader> loaders) {
    //in this example we don't have a classic script based populator
    final DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(databasePopulator());
    initializer.setDatabaseCleaner(databaseCleaner());
    //instead we use the dataloader
    loaders.stream().forEach((loader) -> {
        loader.load();
    });
    return initializer;
}

From source file:cn.org.once.cstack.config.DatabaseConfiguration.java

@Bean(name = "dataSourceInitializer")
public DataSourceInitializer dataSourceInitializer(final DataSource dataSource) {
    final DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(databasePopulator());
    return initializer;
}

From source file:com.springsource.open.db.AtomikosApplication.java

private DataSourceInitializer initialize(DataSource dataSource, String name) {
    DataSourceInitializer initializer = new DataSourceInitializer();
    initializer.setDataSource(dataSource);
    ResourceDatabasePopulator populator = new ResourceDatabasePopulator(new ClassPathResource(name + ".sql"));
    populator.setIgnoreFailedDrops(true);
    initializer.setDatabasePopulator(populator);
    return initializer;
}

From source file:aka.pirana.springsecurity.config.PersistenceConfig.java

@Bean
public DataSourceInitializer dataSourceInitializer(DataSource dataSource) {
    System.out.println("aka.pirana.springsecurity.config.PersistenceConfig.dataSourceInitializer()");
    DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();
    dataSourceInitializer.setDataSource(dataSource);
    ResourceDatabasePopulator resourceDatabasePopulator = new ResourceDatabasePopulator();
    resourceDatabasePopulator.addScript(new ClassPathResource("db.sql"));
    dataSourceInitializer.setDatabasePopulator(resourceDatabasePopulator);
    dataSourceInitializer.setEnabled(Boolean.parseBoolean(initDatabase));
    return dataSourceInitializer;
}

From source file:org.duracloud.snapshot.db.DatabaseInitializer.java

public void init(DatabaseConfig databaseConfig) {
    final DataSourceInitializer initializer = new DataSourceInitializer();
    dataSource.setUrl(databaseConfig.getUrl());
    dataSource.setUsername(databaseConfig.getUsername());
    dataSource.setPassword(databaseConfig.getPassword());
    initializer.setDataSource(dataSource);
    initializer.setDatabasePopulator(databasePopulator(databaseConfig));

    try {/*from   ww w .  j a v a  2s. c  om*/
        initializer.afterPropertiesSet();
    } catch (Exception e) {
        Throwable rootCause = getRootCause(e);

        // The database initialization SQL scripts create the necessary
        // tables.  If the exception indicates that the database already
        // contains tables then ignore the exception and continue on,
        // otherwise throw the exception.
        if (rootCause.getMessage().contains("already exists")) {
            LOGGER.info("Database initialization - tables already exist: {}", rootCause.getMessage());
        } else {
            throw e;
        }
    }
}

From source file:org.springframework.cloud.stream.module.jdbc.JdbcSinkConfiguration.java

@ConditionalOnProperty("initialize")
@Bean/*from   www.jav a2 s .  co  m*/
public DataSourceInitializer nonBootDataSourceInitializer(DataSource dataSource,
        ResourceLoader resourceLoader) {
    DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();
    dataSourceInitializer.setDataSource(dataSource);
    ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
    databasePopulator.setIgnoreFailedDrops(true);
    dataSourceInitializer.setDatabasePopulator(databasePopulator);
    if ("true".equals(properties.getInitialize())) {
        databasePopulator.addScript(new DefaultInitializationScriptResource(properties));
    } else {
        databasePopulator.addScript(resourceLoader.getResource(properties.getInitialize()));
    }
    return dataSourceInitializer;
}