2015-08-06 1 views
3

J'utilise spring-data-cassandra 1.1.2.RELEASE pour mapper des objets de et vers Cassandra DB via des référentiels de données printaniers. J'ai une exigence particulière qui est qu'un attribut de classe de mot de passe doit être crypté dans la base de données et doit être déchiffré lorsque les données sont chargées à partir de DB.Objet pré/post processus lors de l'enregistrement/chargement de Cassandra DB en utilisant spring-data-cassandra

Nous l'avons fait avant d'utiliser spring-data-mongo et d'ajouter des écouteurs d'événements personnalisés via AbstractMongoEventListener où nous utilisons jasypt pour crypter/décrypter juste avant et après que l'objet soit en lecture/écriture dans la base de données.

Nous avons essayé d'utiliser certains écouteurs d'événements pour Cassandra s'ils existent. Entre-temps, nous avons constaté qu'une solution possible est l'utilisation de convertisseurs personnalisés, mais la documentation est rare à cet égard (les sections 5.8.1 à 5.8.9 sur la documentation sont vides http://docs.spring.io/spring-data/cassandra/docs/current/reference/html/#cassandra.custom-converters).

Ma question est, est-ce la meilleure façon de faire cela? Où puis-je trouver des exemples et de la documentation sur la façon d'y parvenir?

Répondre

1

Une solution alternative consiste à ajouter une couche supplémentaire comme DAO et à séparer les entités Cassandra des entités que vous exploitez en mémoire.