rid*_*ddy 8 java rest spring jackson spring-boot
我有一个端点,应该读取一个字符串值作为正文.
@RestController
public class EndpointsController {
@RequestMapping( method = RequestMethod.PUT, value = "api/{myId}/name", consumes= MediaType.APPLICATION_JSON )
public String updateName( @PathVariable( MY_ID ) String myId, @RequestBody String name) {
//will be: "new name"
//instead of : newname
return myId;
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,客户端将使用"新名称"调用它,这是正确的恕我直言,但服务器用引号读取它,因为它不处理字符串作为json对象.我怎么能告诉杰克逊解析字符串(与Pojos相同)?
Sot*_*lis 14
如果您使用Jackson作为JSON解析器,则只需使用类型声明参数即可TextNode
.这是表示JSON字符串的Jackson类型.
public String updateName(@PathVariable(MY_ID) String myId, @RequestBody TextNode name) {
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用其asText
方法来检索其文本值.
归档时间: |
|
查看次数: |
15647 次 |
最近记录: |