NiceLeeのBlog 用爱发电 bilibili~

SpringBoot 踩坑记录(四)- 注解@Controller及@RestController

2018-11-09
nIceLee

阅读:


本文记录SpringBoot学习中遇到的问题。
网页访问还是内容请求接口的处理方式?注解告诉你。

@Controller

这个@Controller和@RequestMapping(“/xxx”)用来处理网页访问。举例:

@RequestMapping("/query")
String query( Model model, MusicQuery query) {
	logger.info( query.toString() );
	model.addAttribute("query", query);
	if( null != query.getContent()  && !"".equals(query.getContent())) {
		model.addAttribute("songList", query.getContent() );
	}
	return "result";
}  

这里返回的是一个页面,这个页面即由query方法返回的String “result”对应的静态页面资源(可能是result.html,result.jsp等)

@RestController

这个@RestController@RequestMapping(“/xxx”)用来处理接口请求。举例:

@RequestMapping("/query")
String query( MusicQuery query) {
	logger.info( query.toString() );
	return "result";
}  

这里返回的是一个字符串,仅仅只是一个“result”的字符串

@RequestMapping("/query")
MusicQuery query( MusicQuery query) {
	logger.info( query.toString() );
	return query;
}  

这里返回的是一个json,spring boot自动将MusicQuery转换。


内容
隐藏