首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Spring MVC控制器如何将json的自定义拦截器添加到对象序列化和反序列化

Spring MVC控制器如何将json的自定义拦截器添加到对象序列化和反序列化
EN

Stack Overflow用户
提问于 2011-03-10 06:25:07
回答 1查看 2.2K关注 0票数 0

我正在使用带注释的spring 3 MVC。

使用@ResponseBody和@RequestBody注解,我可以使用MappingJacksonHttpMessageConverter将对象序列化和反序列化为json,反之亦然。

我需要引入对象到json转换的自定义拦截器,它可以使用压缩的键,例如fullName可以用作fN,等等。有人能建议我如何在控制器中嵌入自定义拦截器(使用任何注释)来进行序列化和反序列化。

EN

回答 1

Stack Overflow用户

发布于 2011-03-10 17:47:23

您可以随时使用任何序列化程序并将其发送到HTTP流:

它会让你的生活更轻松。

代码语言:javascript
运行
复制
@RequestMapping(value="/get/{id}",method = RequestMethod.GET)
@ResponseBody
public void getData(@PathVariable String id,HttpServletResponse response){

//make our business logic. 

//use any serializer to serialize.
String serialiedObject = Serializer.serialize(Object);
 response.setContentType("application/json");
 response.setContentLength(serialiedObject.length);
 ServletOutputStream out;
try {
    out = response.getOutputStream();
    out.write(serialiedObject);
    out.lose();
    } catch (IOException e) {
    e.printStackTrace();
    }

}

同样,您可以使用POST请求将json字符串发送到控制器。

代码语言:javascript
运行
复制
@RequestMapping(value="/add",method = RequestMethod.POST)
@ResponseBody
public void addtData(@RequestParam("json") String myJson){

Object =    //use any serializer to serialize.
Object deSerialiedObject = Serializer.deserialize(myJson);

}

希望能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5253009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档