Spring学习经验—@Controller和@RestController
分类:计算机 | Spring | 综合 1221
更新:2020-11-24 22:30:57编辑
1 @Controller
SpringMVC采用经典的三层分层控制结构,在持久层,业务层和控制层分别采用@Repository、@Service、@Controller对分层中的类进行注解,而@Component对那些比较中立的类进行注解。
@Controller用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller对象,分发处理器会扫描使用该注解的类的方法,并检测该方法是否使用了@RequestMapping注解。
@Controller只是定义了一个控制器类,而使用@RequestMapping注解的方法才是处理请求的处理器。
@Controller类中的方法可以直接通过返回String跳转到jsp、ftl、html等模板页面,在方法上加@ResponseBody注解,也可以返回实体对象。
2 @RestController
@RestController注解,相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面。
@RestController类中的所有方法只能返回String、Object、json等实体对象,不能跳转到模板页面。
3 参考资料
猿导航
阅读排行榜
- 1vue和el-table使用经验-如何刷新表格数据10962
- 2three.js加载3D瓦片和3dtiles数据生成交互式地图的开源项目9509
- 3Microsoft Visual C++ Redistributable是什么,有什么作用?7287
- 4mybatis使用经验——mybatis-spring-boot-starter和mybatis的版本对应关系表(持续更新~)5869
- 5uni-app使用经验—vue页面和html页面如何互相调用接口并传参5489
- 6Intellij IDEA下的版本控制VCS的启用与关闭4922
- 7Spring学习经验—@ResponseBody注解的使用说明4907
- 8Druid异常解决经验—java.sql.SQLException url not set4522
- 9如何用批处理命令(bat脚本)启动和停止windows服务4301
- 10nuxt.js项目中如何添加和使用全局变量4165
- 11解决SpringBoot使用maven下载不了jar包的问题3503
- 12linux中解压tar.gz文件报错“gzip: stdin: invalid compressed data--format violated”3405
- 13nuxtjs asyncData使用经验—如何发起多个axios请求并携带参数3253
- 14在Nuxt.js项目的head中引用外部js文件3095
- 15在NVIDIA控制面板设置参数时提示“拒绝访问 无法应用选定的设置到您的系统”的解决方法之一3072