• Spring中@Controller和@RestController之间的区别


    1. Controller, RestController的共同点

         都是用来表示Spring某个类的是否可以接收HTTP请求


    2.  Controller, RestController的不同点

         @Controller标识一个Spring类是Spring MVC controller处理器

         @RestController:  @RestController是@Controller和@ResponseBody的结合体,两个标注合并起来的作用。


    示例如下:

    [html] view plain copy
     print?在CODE上查看代码片派生到我的代码片
    1. @Controller  
    2. @ResponseBody  
    3. public class MyController { }  
    4.   
    5. @RestController  
    6. public class MyRestController { }  

    4.0重要的一个新的改进是@RestController注解,它继承自@Controller注解。4.0之前的版本,Spring MVC的组件都使用@Controller来标识当前类是一个控制器servlet。

     

    使用这个特性,我们可以开发REST服务的时候不需要使用@Controller而专门的@RestController。


    当你实现一个RESTful web services的时候,response将一直通过response body发送。为了简化开发,Spring 4.0提供了一个专门版本的controller。下面我们来看看@RestController实现的定义:

     

    Java代码  
    1. @Target(value=TYPE)  
    2.  @Retention(value=RUNTIME)  
    3.  @Documented  
    4.  @Controller  
    5.  @ResponseBody  
    6. public @interface RestController  

     

  • 相关阅读:
    java上传文件依赖的jar
    maven创建web项目很慢
    人才的成长与工作环境
    msdtc
    阿里巴巴的ChaosBlade
    集成电路
    晶体管
    PHPStorm如何快捷提交代码到服务器
    PHP 7新特性
    题(3)
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13317618.html
Copyright © 2020-2023  润新知