• Spring @Controller和@RestController的区别?


    @RestController is a stereotype annotation that combines @ResponseBody and @Controller.
    意思是:
    @RestController注解相当于@ResponseBody + @Controller合在一起的作用。

    1)如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容

    2)如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。
    3)如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

    package com.itheima.controller;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.ApplicationContext;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    import java.util.Arrays;
    import java.util.List;
    
    @RestController
    @RequestMapping
    public class ViewAllBeans {
    
        @Autowired
        private ApplicationContext applicationContext;
    
        @GetMapping("/beanList")
        public List<String> beanList() {
            return Arrays.asList(applicationContext.getBeanDefinitionNames());
        }
    }

    结果如下:

    0    "org.springframework.context.annotation.internalConfigurationAnnotationProcessor"
    1    "org.springframework.context.annotation.internalAutowiredAnnotationProcessor"
    2    "org.springframework.context.annotation.internalCommonAnnotationProcessor"
    3    "org.springframework.context.event.internalEventListenerProcessor"
    4    "org.springframework.context.event.internalEventListenerFactory"
    5    "springMvcConfig"
    6    "bookController"

    REF

    https://www.cnblogs.com/clwydjgs/p/9255046.html

    https://blog.csdn.net/gg12365gg/article/details/51345601

  • 相关阅读:
    Choosing the Type at Runtime
    User-Defined Components Must Be Capitalized
    Computed property names
    Controlled Components
    Handling Event
    State
    props
    Functional and Class Components
    招聘漂亮的员工
    Spread Syntax
  • 原文地址:https://www.cnblogs.com/emanlee/p/15759061.html
Copyright © 2020-2023  润新知