当前位置: 首页 > 知识库问答 >
问题:

Spring引导液基集成

酆阳煦
2023-03-14

尽管我提出了问题https://github.com/spring-projects/spring-boot/issues/662为了提供一个spring boot starter liquibase starter模块,今天我发现已经有了某种集成。

Spring Boot已经包含https://github . com/spring-projects/spring-boot/tree/master/spring-boot/src/main/Java/org/spring framework/boot/liqui base,带有Spring Boot Liquibase特定的服务定位器。从这些代码和Spring Boot参考指南中,我无法找出Spring Boot已经提供了什么。

然而,我还发现,当添加Gradle依赖“org.liquibase:liquibase-core”(注意没有版本号)时,它会自动解析liquibase 3.1.1,因此Spring Boot特定的依赖解析器在这里做了一些“魔法”。

有人知道Spring Boot在Liquibase方面提供什么样的集成吗?我希望在应用程序启动时自动执行迁移(如果需要)。

共有2个答案

闽经纬
2023-03-14

有关我们如何将liquibase与Spring Boot集成的更多信息,您可以查看教程集成liquibase。

傅越
2023-03-14

Spring Boot知道Liquibase,并在类路径上检测到它(因此有了神奇的依赖解析)。Liquibase有一个SPI来创建它的服务,我们以一种特殊的方式实现它,这样它们就可以使用Spring Boot支持的可执行JAR格式。因此,简而言之,如果它在那里,并且你把它添加到你的上下文中,它就会工作(正如在文档中简要提到的)。但是没有开箱即用的“自动配置”(如果你想要一个新特性,我们可以使用你的github问题来管理它)。

 类似资料:
  • 当Spring Integration(Spring boot)应用程序调用Spring boot应用程序来侦测traceID和spanID的日志记录时,就会出现该问题。 URL调用-->Facade(用spring integration编写,spring boot并支持sleuth)-->spring boot微服务(支持sleuth) 微服务%1调用微服务%2 Microserice 1日志

  • 我正在使用Spring靴和液体基地。使用此url作为指南 http://docs.spring.io/spring-boot/docs/current-snapshot/reference/htmlsingle/ 在中,出现了以下条目,以便spring boot了解LiquiBase。 并将changelog文件放在resources文件夹中。db.changelog-master.xml 为了解

  • 我们在spring boot-spring集成中有一个应用程序,我们正在尝试引入XXE攻击预防。 在java代码中,我们可以按照以下链接进行更改https://www.owasp.org/index.php/XML_External_Entity_(XXE)\u预防\u作弊表\35; SAXSTransformerFactory 我在github中有一个示例工作示例,其中应用程序使用活动mq作为队

  • 如果我把所有的变更集放在一个文件中,它就可以正常工作,但是如果我这样做: 然后我得到下面的错误。迁移目录位于 src/main/资源中 - 我出错的任何想法?谢谢。 编辑: 奇怪的是,这是可行的:

  • 难道没有任何工具或命令行可以自动创建changelog文件吗?我使用的JHipster可以正确地为新实体创建changelogs,但正如这里所说的,JHipster不会为更新的实体生成新的changelogs,所以我想知道它们是否是生成额外changelogs的工具?实际上,我是通过手工编写xml文件来创建changelogs,这似乎并不是非常高效。 谢谢你的阅读。

  • `我已经在运行这个项目,并试图在项目中途引入液化酶。这是一个基于spring boot maven的项目。 我正在按照以下步骤操作。 1.liquibase.properties 运行命令以生成当前数据库状态的更新日志 然后运行命令以同步更改日志并在DB 启动我的应用程序,但它抛出错误关系已经存在。我不知道为什么 liquibase 正在执行已经执行的变更集?我正在使用液基 4.6.3