在@RequestBody中使用spring转换器

是否可以强制使用Converter(org.springframework.core.convert.converter.Converter)完成json对象映射?

Json代码示例:

{

"name": "somename",

"customObject": id

}

其中somename-字符串,id-整数值

映射到:

@Getter

@Setter

@NoArgConstructor

public class ParentObject{

private String name;

private CustomObject customObject;

}

转换器代码示例:

@Component

public class CustomObjectConverter implements Converter<String, CustomObject>{

@Autowired

private CustomObjectService customObjectService;

@Override

public CustomObject convert(String arg0) {

Long id = Long.parseLong(arg0);

return customObjectService.findById(id);

}

}

我要实现的是将json映射到将从db嵌套对象中自动获取的对象。

回答:

您应该JacksonCustomMapper通过扩展JsonMapper然后将其注册到的集合中来实现自己的实现HttpMessageConverters。但是,我不建议您污染默认转换,您可以传入@RequestBody不完整的json,Jackson会将其解析为您的对象,这样就可以在json对象中不传递错误的键就足够了。

)此处:http

:

//magicmonster.com/kb/prg/java/spring/webmvc/jackson_custom.html。好好享受

:-)

以上是 在@RequestBody中使用spring转换器 的全部内容, 来源链接: utcz.com/qa/412906.html

回到顶部