【问题标题】:spring boot multi-line import.sql application.yml configurationspring boot 多行 import.sql application.yml 配置
【发布时间】:2018-03-24 05:22:05
【问题描述】:

我有一个使用 application.yml 文件配置的 Spring Boot 应用程序。我还使用 import.sql 文件通过插入语句将测试数据加载到我的应用程序中。

我希望 import.sql 支持多行语句。

我使用 application.properties 文件Spring Mvc Hibernate Encoding/Multi-line import sql 找到了这个类似问题的答案

但是,我似乎无法将该答案应用于使用我的 application.yml 文件,我尝试如下操作但未成功

spring:
  jpa:
show-sql: true
  hibernate:
    hbm2ddl:
 import_files_sql_extractor:org.hibernate.tool.hbm2ddl.MultipleLinesSqlCommandExtractor

作为参考,我在这里https://docs.jboss.org/hibernate/orm/5.2/javadocs/org/hibernate/tool/hbm2ddl/ImportSqlCommandExtractor.html找到了此属性的文档

但我似乎仍然无法正确配置它。任何人都可以帮忙吗?谢谢

【问题讨论】:

    标签: java spring hibernate spring-mvc spring-boot


    【解决方案1】:

    通过添加属性前缀“spring.jpa.properties”,我得到了适用于 Spring Boot 2 的多行 import.sql 语句。

    所以对于 application.yml 配置是:

    spring:
      jpa:
        properties:
          hibernate:
            hbm2ddl:
              import_files_sql_extractor: org.hibernate.tool.hbm2ddl.MultipleLinesSqlCommandExtractor
    

    【讨论】:

      【解决方案2】:

      在 application.yml 你可以添加配置:

      spring:
          datasource: classpath:/init.sql
      

      或在 data.sql 有多行 sql 命令的测试类中添加 @SQL(value = "data.sql") 注释。

      【讨论】:

      • 感谢您的回答。我真的很想让多行 SQL 语句与默认 import.sql 一起工作,这肯定是可能的吗?
      • 是的,你可以。请尝试此配置 - plog.roycat.net/?p=557 。在我的项目中,我使用类似的方法。
      猜你喜欢
      • 2017-05-24
      • 2018-09-24
      • 2014-02-20
      • 2019-07-17
      • 2019-05-19
      • 1970-01-01
      • 2020-09-19
      • 2018-12-30
      • 2017-04-04
      相关资源
      最近更新 更多