J'ai une entité qui possède une autre entité:Comment renvoyez-vous un sous-ensemble d'une entité JPA appartenant à une autre entité?
//psuedocode
public class ClassA{
private String name;
@OneToOne
private ClassB classb;
}
public class ClassB{
private String thing1;
private String thing2;
private String thing3;
}
Quand je récupérer des objets ClassA, je ne veux pas voir ClassB.thing3, mais je ne veux voir Thing1 chose et 2:
{
"name":"classa",
"classb":{
"thing1":"hi",
"thing2":"there"
}
}
Mais si je fais une recherche ClassB Je veux tout voir:
{"thing1":"hi",
"thing2":"there",
"thing3":"joseph"}
donc je ne peux pas simplement mettre l'annotation sur Thing3 ignorer, parce que je vais l'ignorer sur le seco ND aller chercher. J'ai essayé un Converter<ClassB>
, mais cela me force à implémenter toString()
et fromString()
pour le JSON, qui meurt en convertissant l'objet JSON en Java (le convertisseur attend une chaîne, mais obtient l'objet à la place).
Je veux éviter de construire/analyser l'objet JSON moi-même si possible pour laisser mon fournisseur json faire le travail, si possible. Je suis sur Johnzon.
Quel est votre fournisseur json? Jackson prend en charge les vues Json qui peuvent faire ce que vous voulez, mais ce n'est pas standard. Ex: http://www.baeldung.com/jackson-json-view-annotation – Gimby