【发布时间】:2019-12-22 12:16:55
【问题描述】:
我正在尝试将@RequestParam Map<String, String> 转换为我自己的Map<Enum, Long>,我想知道该怎么做。我的服务需要得到这个转换后的Map<Enum, Long>,我真的很想避免一个封装我的枚举和 id 的对象。
这是必要的,因为端点是用api/suff?FOO=1234&BAR=4567 调用的,并且此服务只有一个是必需的。
我已经尝试使用Converter<String, Map<Enum, Long>> 创建自己的org.springframework.core.convert.converter.Converter。但我无法转换它。
目前我的端点是这样的:
@GetMapping
public ResponseEntity<Stuff> getByIds(@RequestParam @NotEmpty @Size(max = 2) Map<Enum, Long> map) {
return new ResponseEntity<>(someService.getStuff(map), HttpStatus.OK);
}
有没有办法为这种情况实现自定义转换器,还是我必须遵循其他方法?
【问题讨论】:
标签: java spring spring-boot spring-mvc converters