与标题一样 - 如何在初始化DataSource bean之前在Spring Boot应用程序中运行一些自定义代码?
我的DataSource bean的配置基于标准的 spring.datasource。* 属性,所以这里没什么不寻常的 - 我不是手动创建DataSource bean,而是依赖Sprig Boot& #39;自动配置机制,如果可能,我希望以这种方式离开。
我想要实现的目标是在我的Spring Boot应用程序启动时使用Cloud SQL Admin API Client Library for Java配置Google Cloud SQL数据库实例,但在初始化DataSource bean之前,以便在实际创建此bean时使用数据库实例已经存在。
由于
答案 0 :(得分:2)
您可以手动创建@tailrec
def automat3(n: Int, coins: List[Int] = List(200, 100, 50, 20, 10, 5, 2, 1), result: Int = 0): Int = (n, coins) match {
case (0, _) => result
case (n, Nil) => 0
case (n, head::tail) if head > n => automat3(n, tail, result)
case (n, head::_) => automat3(n - head, coins, result+1)
}
bean,同时仍然依赖于Spring Boots自动配置。您需要做的就是指定DataSource
属性前缀
spring.datasource