先讲讲@RestController的产生,从Spring 4.0以后产生的,用来将json/xml数据发送到前台页面,而不是返回视图页面。
@RestController和@Controller的区别
@RestController加在类上面的注解,使得类里面的每个方法都将json/xml返回数据加返回到前台页面中。
@RestController
public class HelloController {
@GetMapping(value="/hello")
public String say(){
return "gril";
}
}
@Controller加在类上面的注解,使得类里面的每个方法都返回一个试图页面。
@Controller
public class HelloController {
@GetMapping(value="/hello")
public String say(){
return "gril";
}
}
@Controller和@ResponseBody(加在方法/类上面)一起使用,和@RestController的作用相同。
@Controller
public class HelloController {
@GetMapping(value="/hello")
@ResponseBody
public String say(){//返回json 数据
return "gril";
}
@GetMapping(value="/hello1")
public String say1(){//返回视图
return "sys/index1";
}
}
@Controller
@ResponseBody
public class HelloController {
// 都返回json数据到页面
@GetMapping(value="/hello")
public String say(){
return "gril";
}
@GetMapping(value="/hello1")
public String say1(){
return "sys/index1";
}
}