浅析@ResponseBody的实际应用

        @ResponseBody注解是springmvc中用于方便json与string,实体对象之间转换的一个注解。在controller中我们可以在方法上面添加@ResponseBody注解,这样我们返回实体对象或者字符串时,就会自动转换成json对象传给前端。在spring4.0后,@ResponseBody又可以加在类上,表示该类中的所有方法都加有@ResponseBody,很方便。另一种方式是使用@RestController注解在类上,作用等于@Controller与@ResponseBody同时加在类上,这也是最方便的一种方式。要让@ResponseBody在类上也起作用,需要在springmvc配置文件中加上这一行配置才可以。而@ResponseBody使用在方法上,则不用添加该配置也可以使用。也就是说springmvc默认只支持@ResponseBody在方法上使用,不支持在类上的使用。

        以上就是@ResponseBody的作用,在实际项目中,我们可能会将后台管理项目与app的后台放在一个项目里面,这样就等于是两个后台共用一套springmvc的配置文件。但是app后台的controller都是返回json信息的,而后台管理是用来返回jsp界面的,会有点混乱。这种情况下,我们需要同时配置和viewResolver,这样的话,app后台的controller都加上@RestController即可,而后台管理的controller则不要@ResponseBody和@RestController,只返回字符串格式的jsp文件名即可。这样就可以两不耽误,两个项目合在一起开发了。

你可能感兴趣的:(spring)