Java--@RestController(2017-12-05)
2017-12-05 11:24
253 查看
写Controller层时,我们经常会需要将对象序列化!
比如:浏览器发送一个Ajax请求,该请求传入参数是一个JSON格式,在服务的需要将JSON参数转换为普通的Java对象,这就是序列化!
我们在服务端获取到数据,这个数据是一个普通的Java对象,我们需要将这个Java对象转换为JSON字符串,并将其返回到浏览器中,這个为反序列化。
在SpringMVC中,我们只需要在Controller层中使用@RequestBody注解就可以将对象进行反序列化。这个相信大家肯定都用过!
若需要对Controller的方法进行序列化,我们就在返回值上使用@ResponseBody注解来定义。
我们也可以将@RequestBody定义在Controller类上,这样我们就使得在该类上所有的方法都将会被序列化。
然而,你想到的Spring早都想到了,它在4.0中为我们提供了一个注解@RestController,
源代码如下:
从代码中我们不难看出,我们需要的注解,在@RestController中已经定义过,我们只需要调用这个注解,就可以解决我们所有的问题,是不是很方便。
参考文章:https://www.csdn.net/article/2015-10-25/2826033
刚开始写博客,不是很熟练,希望能够给大家带来帮助。不喜勿喷,谢谢。
比如:浏览器发送一个Ajax请求,该请求传入参数是一个JSON格式,在服务的需要将JSON参数转换为普通的Java对象,这就是序列化!
我们在服务端获取到数据,这个数据是一个普通的Java对象,我们需要将这个Java对象转换为JSON字符串,并将其返回到浏览器中,這个为反序列化。
在SpringMVC中,我们只需要在Controller层中使用@RequestBody注解就可以将对象进行反序列化。这个相信大家肯定都用过!
@ApiOperation("读取药品码编码Api接口getBalanceStockMedicine") @RequestMapping(value= "/getBalanceStockMedicine", method = RequestMethod.POST) publicBalanceStockMedicine[] feed(@RequestBody FeedingDto req) { *** }
若需要对Controller的方法进行序列化,我们就在返回值上使用@ResponseBody注解来定义。
@RestController @RequestMapping("/medicine") publicclass MedicineController { @RequestMapping(value= "/getBalanceStockMedicine", method = RequestMethod.POST) public@RequestBody BalanceStockMedicine[] feed(@RequestBody FeedingDto req) { *** } }
我们也可以将@RequestBody定义在Controller类上,这样我们就使得在该类上所有的方法都将会被序列化。
然而,你想到的Spring早都想到了,它在4.0中为我们提供了一个注解@RestController,
源代码如下:
@Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Controller @ResponseBody public @interface RestController { Stringvalue() default ""; }
从代码中我们不难看出,我们需要的注解,在@RestController中已经定义过,我们只需要调用这个注解,就可以解决我们所有的问题,是不是很方便。
参考文章:https://www.csdn.net/article/2015-10-25/2826033
刚开始写博客,不是很熟练,希望能够给大家带来帮助。不喜勿喷,谢谢。
相关文章推荐
- Spring Boot的被@SpringBootApplication注解的App.java必须放在所有的RestController的根路径的package下
- 在spring boot中使用restTemplate上传大文件Java heap space
- 当REST遇上Java
- 【JAVA秒会技术之软件应用】Chrome超强测试软件Advanced-REST-client免越狱安装
- java spring 将 properties 文件的配置注入到controller
- 【JavaEE REST】基于第三方框架Restlet
- Spring中@Controller和@RestController之间的区别
- java文件下载 rest
- spring boot注解@SpringBootApplication、@Controller、@RestController
- 使用Java Rest Client操作Elasticsearch
- @Controller和@RestController
- java中使用elastaicsearch(RestHighLevelClient)
- Java REST框架介绍
- 神器:REST测试工具[wiztools.org restclient]客户端Jar依赖Java安装环境
- C# 客户端 调用Java版的REST风格的web Service
- Jersery——RESTful Web Services in Java,RESTful服务,Jersey+Spring实现REST服务调用
- 如何在java REST API中用GZip和Jersey压缩相应
- @Controller 和@RestController 的区别
- 深入浅出Java MVC(Model View Controller) ---- (JSP + servlet + javabean实例)
- elasticsearch java 基于 RestClientAPI 的增删改查