我想知道例如SpringMVC控制器是否可以有方法签名,例如
@RequestMapping(value = "/target", method = RequestMethod.POST)
@ResponseBody
public void acceptObject(@RequestBody MyObjectDto dto,@RequestBody String messageBody) {
//Authenticate messageBody
//Process mapped DTO
}
Run Code Online (Sandbox Code Playgroud)
目的是将JSON发布到此控制器,原始消息体将进行身份验证以确保完整性,如果正确,则JSON将映射到可以切换以进行处理的DTO.
目前我最终得到了
java.io.IOException: Stream closed
Run Code Online (Sandbox Code Playgroud) 我只是想知道,给了一个pojo:
public class MyProfileDto {
private List<String> skills;
//mutators; getSkills; setSkills + bunch of other fields
}
Run Code Online (Sandbox Code Playgroud)
和技能领域的JSON:
"skills":{
"values":[
{
"id":14,
"skill":{
"name":"C++"
}
},
{
"id":15,
"skill":{
"name":"Java"
}
}
],
"_total":2
}
Run Code Online (Sandbox Code Playgroud)
有没有办法使用Jackson将技能/值/技能/名称字段(即"Java","C++")放入目标Dto的字符串列表而不为整个Dto创建自定义反序列化器?它有很多字段,所以如果可能的话,理想的解决方案将涉及一个字段的一些自定义注释或反序列化器?