@Controller注解
@Controller注解声明在类上用来定义一个SpringMVC的控制器, 来处理前端发送的请求。
当类中的方法返回String的结果时, 都会返回一个视图(页面), 由SpringMVC视图解析器解析后返回前端。
例如:
@Controller
public class TController
{
@RequestMapping(value = "/controller", method = RequestMethod.GET)
public String tController()
{
return "/test1";
}
}
结果:
目录结构:
![](https://gitee.com/lxylzk/blogImg/raw/master/20200503234521.png)
配置视图解析器:
@RestController
@RestController是Spring4.0之后加入的, 用来将数据以Json的形式返回给前端页面。
例如:
@RestController
public class TRestController
{
@RequestMapping(value = "/restController", method = RequestMethod.GET)
public String tRestController()
{
return "RestController";
}
}
结果:
总结:
@RestController等价于@Controller + @ResponseBody注解一起使用。
-
当一个类中的全部方法需要返回一个视图时, 那么这个类用@Controller注解。
-
当一个类中的全部方法都要返回一个Json串时, 那这个类用@RestController注解。
-
当一个类中的方法有的返回视图有的返回Json时, 那么这个类用@Controller注解, 并在需要返回Json串的方法上添加@ResponseBody即可。