Spring Boot - 在初始化DataSource bean之前运行自定义代码

时间:2018-01-04 15:39:41

标签: java spring-boot google-cloud-platform

与标题一样 - 如何在初始化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时使用数据库实例已经存在。

由于

1 个答案:

答案 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