gpt4 book ai didi

spring - 如何使用 Spring 在启动时加载 sql 函数?

转载 作者:行者123 更新时间:2023-11-29 11:40:30 27 4
gpt4 key购买 nike

我正在为我的应用程序使用 Spring-Boot,使用 hibernate.hbm2ddl.=update

如何确保在启动时执行 sql 脚本?因此,我想确保 FUNCTION .. LANGUAGE plpgsql 出现在我的 postgresql 数据库中。

最佳答案

通过使用 XML

<jdbc:initialize-database data-source="dataSource">
<jdbc:script location="classpath:com/foo/sql/db-schema.sql"/>
<jdbc:script location="classpath:com/foo/sql/db-test-data.sql"/>
</jdbc:initialize-database>

通过使用注解(下面的例子应该放在你的@Configuration类中)

@Value("classpath:com/foo/sql/db-schema.sql")
private Resource schemaScript;

@Value("classpath:com/foo/sql/db-test-data.sql")
private Resource dataScript;

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

private DatabasePopulator databasePopulator() {
final ResourceDatabasePopulator populator = new ResourceDatabasePopulator();
populator.addScript(schemaScript);
populator.addScript(dataScript);
return populator;
}

关于spring - 如何使用 Spring 在启动时加载 sql 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27859596/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com