Heim > Java > javaLernprogramm > Wie behebt man „org.hibernate.HibernateException: Der Zugriff auf DialectResolutionInfo darf nicht null sein, wenn „hibernate.dialect' nicht festgelegt ist'?

Wie behebt man „org.hibernate.HibernateException: Der Zugriff auf DialectResolutionInfo darf nicht null sein, wenn „hibernate.dialect' nicht festgelegt ist'?

Linda Hamilton
Freigeben: 2024-11-25 08:03:11
Original
340 Leute haben es durchsucht

How to Fix

Wie löst man „org.hibernate.HibernateException: Der Zugriff auf DialectResolutionInfo darf nicht null sein, wenn ‚hibernate.dialect‘ nicht festgelegt ist“?

Die Fehlermeldung „org.hibernate.HibernateException: Der Zugriff auf DialectResolutionInfo darf nicht null sein, wenn ‚hibernate.dialect‘ nicht festgelegt ist“ Tritt auf, wenn Hibernate den Datenbankdialekt nicht ermitteln kann. Dies wird typischerweise durch das Fehlen der Eigenschaft hibernate.dialect in der Hibernate-Konfiguration verursacht. So beheben Sie dieses Problem:

1. Benutzerdefinierte Hibernate-Konfiguration entfernen:

Stellen Sie sicher, dass Sie in Ihrer Anwendung keine benutzerdefinierte Hibernate-Konfiguration definieren, da Spring Boot eine automatische Konfiguration für Hibernate bereitstellt. Entfernen Sie die @Configuration-Klasse (in Ihrem Beispiel HibernateConfig), die die sessionFactory()-Bean definiert, da Spring Boot die erforderlichen Beans für Sie erstellt.

2. Datenbankeigenschaften hinzufügen:

Fügen Sie in Ihre application.properties-Datei die folgenden Eigenschaften ein, um Ihre Datenbankdetails und die Ruhezustandskonfiguration anzugeben:

spring.datasource.url=jdbc:postgresql://localhost:5432/teste?charSet=LATIN1
spring.datasource.username=klebermo
spring.datasource.password=123

spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.show-sql=false
spring.jpa.hibernate.ddl-auto=create
Nach dem Login kopieren

3. Entfernen Sie die commons-dbcp-Abhängigkeit:

Spring Boot verwendet standardmäßig die effizientere HikariCP-Abhängigkeit. Entfernen Sie die commons-dbcp-Abhängigkeit aus Ihrer pom.xml-Datei, damit Spring Boot das Datenbankverbindungspooling verwalten kann.

4. Spring Boot-Version aktualisieren (optional):

Wenn Sie eine ältere Version von Spring Boot verwenden, aktualisieren Sie auf eine neuere Version, um die neuesten Verbesserungen zu nutzen. Spring Boot 2.x unterstützt die SessionFactory-Bean als Erweiterung der EntityManagerFactory. Sie können eine SessionFactory erhalten, indem Sie die EntityManagerFactory umwandeln oder die Unwrap-Methode verwenden.

5. Verwenden Sie @SpringBootApplication:

Anstatt mehrere Annotationen (@Configuration, @EnableAutoConfiguration und @ComponentScan) zu verwenden, können Sie in neueren Versionen von Spring Boot eine einzelne @SpringBootApplication-Annotation verwenden. Diese Annotation kombiniert die Funktionalität aller drei Annotationen.

Hier ist ein Beispiel einer aktualisierten Anwendungsklasse:

@SpringBootApplication
@ComponentScan("com.spring.app")
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie behebt man „org.hibernate.HibernateException: Der Zugriff auf DialectResolutionInfo darf nicht null sein, wenn „hibernate.dialect' nicht festgelegt ist'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage