Heim > Java > javaLernprogramm > Hauptteil

So lösen Sie das Problem des verstümmelten chinesischen Fehlers, wenn Hibernate Daten einfügt

不言
Freigeben: 2018-10-11 15:06:27
nach vorne
2288 Leute haben es durchsucht

Der Inhalt dieses Artikels befasst sich mit der Lösung der verstümmelten chinesischen Fehlermeldung, wenn Hibernate Daten einfügt. Ich hoffe, dass er für Sie hilfreich ist.

Fehlerbeschreibung

Das Programm wird ausgeführt und fügt Daten (einschließlich Chinesisch) in die Tabelle ein: xE6xB2 x88xE9x9BxAA...

Aber wenn ich eine neue Datenbank erstelle und Daten manuell in Chinesisch einfüge, funktioniert es auch nicht, nachdem ich die Datenbank geändert und die Tabelle codiert habe. Darüber hinaus tritt diese Situation auch unter MySQL5.7 auf und kann nicht gelöst werden.

Problemlösung

In der Hibernate-Hauptkonfigurationsdatei konfigurieren wir die Datenbank Dialekt, die allgemeine Konfiguration ist wie folgt:

<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
Nach dem Login kopieren

Sehen Sie sich den entsprechenden Quellcode an und Sie können sehen, dass es eine Methode wie folgt gibt:

@Override  
public String getTableTypeString()
{  
  return "ENGINE=InnoDB";  
}
Nach dem Login kopieren

So können wir eine Klasse anpassen und die obige Methode wie folgt umschreiben:

package com.taohan.util;
import org.hibernate.dialect.MySQL5InnoDBDialect;
public class HibernateEncodeAdapter MySQL5InnoDBDialect {
    @Override 
    public String getTableTypeString() {  
        return "ENGINE=InnoDB DEFAULT CHARSET=utf8";    
    }  
}
Nach dem Login kopieren

Zuletzt ändern die Hibernate-Hauptkonfigurationsdatei und geben Sie den Datenbankdialekt an. Die Klasse ist die, die wir wie folgt angepasst haben:

<property name="dialect">com.taoahn.util.HibernateEncodeAdapter</property>
Nach dem Login kopieren

Natürlich ist es am besten, <🎜 hinzuzufügen nachdem Sie den Datenbankverbindungspfad in der Hibernate-Hauptkonfigurationsdatei wie folgt festgelegt haben:

<property name="hibernate.connection.url">jdbc:mysql:///test?useUnicode=true&characterEncoding=UTF-8</property>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem des verstümmelten chinesischen Fehlers, wenn Hibernate Daten einfügt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!