我有这样一个类:
@Data
public class CreateExamParamDTO {
/**
* 考试名称
*/
private String title;
/**
* 描述
*/
private String description;
/**
* 报名开始时间
*/
private LocalDateTime beginTime;
/**
* 报名截止时间
*/
private LocalDateTime endTime;
/**
* 考试时间地点信息
*/
private Map<LocalDateTime, List<CreateExamPlaceParamDTO>> timePlace;
}
有一个如下接口:
@PostMapping
@ApiOperation("创建考试")
public MessageResponseVO createExam( @RequestPart(value = "exam") CreateExamParamDTO createExamParamDTO) {
return null;
}
现在由于timePlace
属性是一个包含泛型的 Map,导致spring mvc 在调用 jackson 进行反序列化时报Unsupported Media Type
错误,想知道应该怎么处理这种泛型的反序列。
我知道可以使用 TypeReference,然后调用 readValue(value,typeReference)来反序列化泛型。但是这需要手动去调用,就不能让spring mvc自动反序列化了。我想知道是否有什么注解之类的方式活着全局设置的方式,既能处理泛型的反序列化,又能同时让 spirng mvc 自动去帮我做反序列化操作