Dto'yu Arka Uç Varlıklarıyla Eşle

0

Soru

Db'deki verilerin Varlıklara yüklendiği bir rest uygulaması geliştiriyorum, ardından ilgili Dto'larda doldurulurken veriler üzerinde bazı dönüşümler yapılıyor ve ardından tüketiciye geri döndürülüyor.

Tüketiciye ve diğer bazı parametrelere göre, verilerin farklı bir alt kümesi kullanıcıya iade edilmelidir, örneğin kullanıcı kişisel bilgilerini soruyorsa, iade edilen ayrıntı düzeyi bir yöneticinin çalışanlarının verilerini sormasından farklı olacaktır, vb ...

Benim sorum: Bu özel eşlemeyi işlemek için herhangi bir çerçeve var mı (yani, hangi Varlığın hangi alanda hangi koşulda hangi DTO ile eşleştirilmesi gerektiğini belirleyen xml tabanlı bir dosya mı ? her durumda özel bir kod yapmak yerine? şimdiden teşekkürler.

Spring rest + hazırda bekletme kullanıyorum

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

En iyi cevabı

2

XML dosya eşlemesi hakkında hiçbir şey bilmiyorum. Ama gerçekten yararlı ve çok özelleştirilebilir bulduğum şey MapStruct. Bu çok kullanışlı bir kütüphanedir ve dokümanlar ve örnekler çok iyidir.

Basit bir örnek:

@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); 
}

Ayrıca IDE ve Lombok desteği de var.

2021-11-22 07:37:16

teşekkürler... ancak uygulamam gerekiyor carToCarDto yöntem - ve birden çok eşlemem varsa -... Doğru mu?
osama yaccoub

Hayır, MapStruct bunları sizin için uygulayacaktır, sadece alıcılara ve ayarlayıcılara sahip olmanız gerekir. Cevapta bağladığım örnekleri ve web sitesini kontrol edin. Tam olarak ihtiyacın olanı yapıyor.
Renis1235

Diğer dillerde

Bu sayfa diğer dillerde

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