我使用独立的postgresql数据库构建Spring Boot + MyBatis项目。
嗯,出于某种原因,"基于会议的"数据库初始化没有发生。我手动添加了数据源,创建了sql-scripts,但是当我运行项目时,从日志中它甚至都没有处理这些脚本。我想理解该过程如何适用于非嵌入式数据库。
可以使用代码创建数据源实例吗?
我应该在属性文件中链接数据源还是单独的类?
将单独的数据源(在本例中为postgresql)与Spring Boot配置链接起来应该做些什么?
答案 0 :(得分:1)
是
@Bean
public DataSource dataSource() {
DataSourceBuilder.create()
.url("jdbc:postgresql://localhost:5432/database")
.username("username")
.password("password")
...
.build();
}
2-3。您可以使用属性文件以及提供基于Java的DataSourceConfiguration
spring.datasource.url: jdbc:postgresql://localhost:5432/database
spring.datasource.username: username
spring.datasource.password: pasword
并在Configuration类中引用这些属性,如下所示:
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return DataSourceBuilder.create().build();
}
如果您只有一个要连接的数据库,最方便的方法是将其连接属性添加到属性文件中,前缀为spring.datasource
(scroll here to check available options)并添加org.postgresql
依赖项pom.xml(build.grade)文件和SpringBoot将完成剩下的工作。