在 Spring Boot 应用程序中动态创建模式
Posted
技术标签:
【中文标题】在 Spring Boot 应用程序中动态创建模式【英文标题】:Dynamically create schema in Spring boot application 【发布时间】:2019-11-22 13:32:45 【问题描述】:我有一个使用 JPA 和 Hibernate 的 Spring 引导应用程序。它已经连接到所有事务的主数据源。
现在手头的任务是我需要在不同的数据库中动态创建数据库模式。例如,
对于项目 1,在数据库 X 中创建模式 1 对于项目 2,在数据库 X 中创建模式 2
以后,这些数据库将被其他人在外部使用。我正在寻找完成这项工作的最佳方法。
【问题讨论】:
您可以将gradle
与flyway
一起使用,然后创建一个任务以创建数据库架构。
你也可以试试this answer
你的问题有点抽象,你想连接2个数据源?当您说项目 1 和 2 是主要来源中的那些应用程序或表时?
【参考方案1】:
如果在 Spring Boot 项目中定义多个数据源,您必须在配置中声明关联的 bean。使用 spring.jpa.hibernate.ddl-auto=create 它将自动在正确的数据库中创建模式 as answered here
【讨论】:
以上是关于在 Spring Boot 应用程序中动态创建模式的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Spring (Boot) 应用程序的代码中动态添加 bean?
Spring Boot 应用程序不会为 JPA @Table 注释创建模式