2017-06-20 5 views
0

Ich habe eine einfache persistente pojo wie:Kann MongoTemplate automatische Übersetzung liefern?

public class Peristent { 
    private String unsafe; 
} 

I Spring Data mongoTemplate verwenden, um die obige Aufgabe zu bestehen und zu holen. Ich muss auch die Persistent.unsafe-Variable verschlüsseln und eine komplexe Darstellung davon im Backend speichern, jedes Mal wenn ich versuche, das persistente Objekt zu speichern.

Kann ich Persistent annotieren oder eine Art von Hooks bereitstellen, wo ich die oben genannten Übersetzungen machen kann, ohne dass ich das manuell im Pojo-Code machen muss. Dies muss bei mongoTemplate.insert automatisch geschehen.

+0

Haben Sie @ Convert Konstrukt aus dem Frühjahr JPA – Shibashis

+0

http://docs.oracle.com/javaee/7/api/javax/persistence/Convert.html Cites gute Beispiele – Shibashis

+0

@Shhibashis Ich denke nicht, das OP verwendet JPA mit MongoDb. –

Antwort

0

Spring Data unterstützt derzeit nur typbasierte Konvertierungen. Es gibt eine issue for supporting property based conversion, die Sie möglicherweise verfolgen möchten.

Daher wird Annotation nicht funktionieren. Was Sie tun könnten, ist create verwenden Sie eine separate Klasse für die Eigenschaft, die nur die String umschließt und einen benutzerdefinierten Konverter für diesen Typ registriert. Details dazu finden Sie unter http://docs.spring.io/spring-data/data-mongo/docs/1.10.4.RELEASE/reference/html/#mongo.custom-converters.