[英]How convert string field to hashmap value with mapstruct java?
[英]How to Convert String to Date using MapStruct in Java?
我正在使用 MapStruct 將值從源映射到目標類。 源類具有 String 屬性,目標類具有 java.util.Date 屬性。 源屬性是這樣的:“yyyy-mm-dd”。 我想將此 String 屬性轉換為 Date 屬性。 如何使用 MapStruct 做到這一點? 謝謝!
MapStruct 會自動處理String
到Date
的轉換。 如果您需要指定日期的格式,您可以這樣做:
@Mapping(target = "date", dateFormat = "yyyy-MM-dd")
Destination map(Source source);
其中target = "date"
是您的財產的名稱。 您可以在MapStruct 文檔中找到更多相關信息。
從官方指南,如果你有多個日期,你可以使用這個:
public class DateMapper {
public String asString(Date date) {
return date != null ? new SimpleDateFormat( "yyyy-MM-dd" )
.format( date ) : null;
}
public Date asDate(String date) {
try {
return date != null ? new SimpleDateFormat( "yyyy-MM-dd" )
.parse( date ) : null;
}
catch ( ParseException e ) {
throw new RuntimeException( e );
}
}
}
在你的映射器之后:
@Mapper(uses=DateMapper.class)
public interface CarMapper {
CarDto carToCarDto(Car car);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.