Carte DTO à Backend Entités

0

La question

Je suis en train d'élaborer un reste d'application où les données en DB est chargé dans des Entités ensuite, certaines transformations sont effectuées sur les données, tout en étant rempli correspondant Otd ensuite renvoyé vers le consommateur.

Selon les consommateurs et certains autres paramètres, un autre sous-ensemble des données doit être retourné à l'utilisateur, par exemple si l'utilisateur interroge sur ses informations personnelles, le niveau de détails de retour sera différent que si un gestionnaire est de l'enquête sur les données de ses employés, etc ...

Ma question: Est-il un cadre pour gérer cette cartographie personnalisés (c'est à dire une base de xml fichier qui détermine le champ dans lequel s'Entité doit être mappé à qui DTO dans quelle condition ? au lieu de faire un code personnalisé dans chaque cas? merci à l'avance.

Je suis à l'aide de printemps repos + hibernate

dto hibernate java mapping
2021-11-22 07:19:19
1

La meilleure réponse

2

À propos de fichier XML de mapping, je ne sais pas tout. Mais ce que je trouve vraiment utile et très personnalisable est MapStruct. Il est très utile de la bibliothèque et de la documentation et des exemples sont très bons.

Un exemple simple:

@Mapper 
public interface CarMapper {
 
    CarMapper INSTANCE = Mappers.getMapper( CarMapper.class ); 
 
    @Mapping(source = "numberOfSeats", target = "seatCount") // Here is one of the functionalities that you wanted...
    CarDto carToCarDto(Car car); 
}

Et il y a de l'IDE et de Lombok soutien également.

2021-11-22 07:37:16

merci ... cependant, j'ai besoin de mettre en œuvre carToCarDto méthode -et tous les autres si j'ai des correspondances multiples- ... droit?
osama yaccoub

Non, MapStruct mettra en œuvre pour vous, vous avez juste besoin d'avoir des accesseurs et mutateurs. Vérifiez les exemples et le site web que j'ai fait un lien dans la réponse. C'est exactement ce dont vous avez besoin
Renis1235

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................