gpt4 book ai didi

java - 登录后spring boot entityManagerFactory初始化

转载 作者:行者123 更新时间:2023-11-30 12:07:58 25 4
gpt4 key购买 nike

我使用 spring boot 开发了一个 JavaFX 应用程序。此应用程序使用本地数据库 (H2),但是数据库名称、用户名、密码等数据库连接属性由用户在登录屏幕上输入。

但是 spring boot 初始化了 AppConfig.java 中定义的所有 bean,我无法初始化 javafx 场景来显示 UI。

将排除项添加到@EnableAutoConfiguration 注释中没有帮助。

@SpringBootApplication
@EnableAutoConfiguration(exclude= {DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class, HibernateJpaAutoConfiguration.class})
public class MyApplication extends Application {

spring boot 仍然尝试连接到数据库。

当然,一旦用户输入数据库名称、用户名/密码,spring boot 应该初始化与数据库相关的 bean 或以某种方式强制 spring boot 进行初始化,因为稍后应用程序功能需要它们。

感谢任何提示!

最佳答案

您可以尝试在 spring boot 之前启动登录屏幕,然后将输入的值设置为系统属性。然后启动 Spring Boot:

public static void main(String[] args) {
// Start login screen

// For all properties the user entered
System.setProperty("spring.database.xy", "<value from UI>");

SpringApplication.run(Application.class, args);
}

关于java - 登录后spring boot entityManagerFactory初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54531127/

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