springboot controller层注解

springboot的controller层有两个主要注解@RestController和@Controller,它们标记了一个类是Controller,但有一些区别。

1、@RestController相当于@Controller和@ResponseBody的结合。

2、在controller类中,若想返回json或xml,有两种写法:

  • 在该controller类上加上@RestController注解,然后直接return json数据即可;
  • 在该controller类上加上@Controller注解,然后再在类上或者需要返回json数据的方法上加上@ResponseBody注解。
@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String hello() {
        return "Hello!";
    }
}
@Controller
public class HelloController {
    @RequestMapping("/hello")
    @ResponseBody
    public String hello() {
        return "Hello!";
    }
}

3、在controller类中,若想返回jsp或html页面,则不能使用@RestController,必须使用@Controller;并且需要添加一个模版引擎依赖thymeleaf。


    org.springframework.boot
    spring-boot-starter-thymeleaf

 

你可能感兴趣的:(springboot)