Ich werde ein Projekt starten, in dem ich dynamische Google-Formulare generieren muss. Die Voraussetzung für dieses Projekt ist, dass ich mysql 5.7 verwenden muss, um den json-Datentyp zum Speichern / Abrufen von Json-Daten verwenden zu können. Mir geht es gut. Ich weiß, es ist möglich, HQL zu verwenden. Aber was ich nicht herausfinden konnte ist, wie implementiere ich es mit Hibernate mithilfe von objektrelationalem Mapping?
Irgendwelche Ideen?
Vielen Dank im Voraus!
Vor kurzem habe ich ähnliche Aufgabe gelöst. Ich denke, es ist zu spät, aber vielleicht findet das jemand nützlich.
Kurze Antwort : Sie sollten eine Klasse erstellen (wie " com.test.MyJsonType "), die org.hibernate.usertype.UserType Schnittstelle, wo die Methode nullSafeGet JSON zu java-Objekt deserialisieren sollte (mit Jackson), das nullSafeSet serialisiert POJO zu JSON und einigen anderen Hilfsmethoden.
Dann sollten Sie MySQLDialect erweitern und den neuen Spaltentyp "json" registrieren.
Schließlich können Sie Entity-Felder mit @Type annotieren (type=" com.test.MyJsonType "), die MySQL-json-Spalten zugeordnet werden sollen.
Sie können auch über @TypeDef hier nachlesen, wenn Sie nicht ' Ich möchte den Typ mit dem Paketnamen schreiben.
Zum Beispiel:
%Vor%POJO-Klasse:
%Vor%Neuen Spaltentyp registrieren:
%Vor%Verwenden:
%Vor%