Heim  >  Artikel  >  Datenbank  >  Wie starte ich Spring Boot-Anwendungen ohne Datenbankabhängigkeit?

Wie starte ich Spring Boot-Anwendungen ohne Datenbankabhängigkeit?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-09 00:26:02873Durchsuche

How to Start Spring Boot Applications without Database Dependency?

Starten von Spring Boot-Anwendungen ohne Datenbankabhängigkeit

Um sicherzustellen, dass Spring Boot-Anwendungen auch ohne Datenbank erfolgreich gestartet werden können, sind bestimmte Konfigurationen erforderlich muss implementiert werden.

Ausnahme aufgetreten

Wann Beim Versuch, die Anwendung ohne eine betriebsbereite Datenbank zu starten, tritt die folgende Ausnahme auf:

org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set

Ursache

Dieser Fehler ist darauf zurückzuführen, dass Hibernate sich auf Datenbankmetadaten verlässt, um die geeigneten zu ermitteln Dialekt zur Ausführung von SQL-Anweisungen. Ohne eine Datenbankverbindung kann Hibernate diese Informationen nicht abrufen.

Lösung

Um dieses Problem zu beheben, müssen die folgenden Konfigurationseinstellungen in der Datei application.yml enthalten sein:

spring:
  datasource:
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/schema
    username: root
    password: root
    continueOnError: true
    initialize: false
    initialSize: 0
    timeBetweenEvictionRunsMillis: 5000
    minEvictableIdleTimeMillis: 5000
    minIdle: 0

  jpa:
    show-sql: true
    hibernate:
      ddl-auto: none
      naming_strategy: org.hibernate.cfg.DefaultNamingStrategy
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5Dialect
        hbm2ddl:
          auto: none
        temp:
          use_jdbc_metadata_defaults: false

Diese Einstellungen konfigurieren Folgendes:

  • Datenquelle Informationen: Geben Sie die Datenbankverbindungsdetails an. continueOnError stellt sicher, dass die Anwendung auch dann fortgesetzt wird, wenn die Datenbank nicht verfügbar ist.
  • Initialisieren:Falsch verhindert, dass die Anwendung das Schema automatisch erstellt.
  • Eigenschaften im Ruhezustand :

    • Dialekt: Stellen Sie den Datenbankdialekt manuell ein, um die fehlenden Metadaten zu beheben.
    • hbm2ddl.auto: Auf „none“ setzen, um die automatische Schemagenerierung zu deaktivieren.
    • temp.use_jdbc_metadata_defaults : Deaktivieren Sie die Verwendung von JDBC-Metadaten, um das zu vermeiden Ausnahme.

Das obige ist der detaillierte Inhalt vonWie starte ich Spring Boot-Anwendungen ohne Datenbankabhängigkeit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn