首页  ·  知识 ·  
Label
      编辑:  图片来源:网络

Spring MVC 注解开发

<context:component-scan base-package="com.controls" />

Springmvc的扫描器

由于使用了基于注解的Controller,所以这里指定了需要被扫描的包路径,如果有多个可以使用逗号分隔

<mvc:annotation-driven />注解驱动

DispatcherServlet接管请求后,会由HandlerMapping来执行映射,所以我们需要注册 HanlderMapping,比如上面的标签会自动注册,比如DefaultAnnotationHandlerMapping(执行请求到 Controller的映射)和AnnotationMethodHandlerAdapter(调用controller中的方法)这样的bean,当然这个标签还提供了其他的一些支持

1.@Controller是SpringMVC中最常用的注解,它可以帮助定义当前类为一个Spring管理的BEAN,同时指定该类是一个控制器,可以用来接受请求

    @controller:标识当前类是控制层的一个具体的实现

2.@Controller会默认使用当前类名作为spring bean  name,也可以自定义,比如:@Controller(“loginController”)设置当前Bean的名字为loginController

3. @requestMapping:放在方法上面用来指定某个方法的路径,当它放在类上的时候相当于命名空间需要组合方法上的requestmapping来访问。

注解名称

作用

@Controller

注解标明该类需要Spring容器自动加载,将一个类成为 Spring 容器的 Bean。

@RequestMapping

可以标注在类定义处,将 Controller 和特定请求关联起来;还可以标注在方法签名处。所以在类声明处标注的 @RequestMapping 相当于让 POJO 实现了 Controller 接口,而在方法定义处的 @RequestMapping 相当于让 POJO 扩展 Spring 预定义的 Controller(如 SimpleFormController 等)。

@Resource

用来注解该属性的SETTER方法参数来源于Spring Bean

@ModelAttribute

①绑定请求参数到命令对象:放在功能处理方法的入参上时,用于将多个请求参数绑定到一个命令对象,从而简化绑定流程,而且自动暴露为模型数据用于视图页面展示时使用;

②暴露表单引用对象为模型数据:放在处理器的一般方法(非功能处理方法)上时,是为表单准备要展示的表单引用对象,如注册时需要选择的所在城市等,而且在执行功能处理方法(@RequestMapping注解的方法)之前,自动添加到模型对象中,用于视图页面展示时使用;

③暴露@RequestMapping方法返回值为模型数据:放在功能处理方法的返回值上时,是暴露功能处理方法的返回值为模型数据,用于视图页面展示时使用。

@SessionAttributes

代表被注解对象会被存放到HttpSession作用域

@PathVariable

用于将请求URL中的模板变量映射到功能处理方法的参数上

@requestParam

用于将请求参数区数据映射到功能处理方法的参数上


本文作者:网友 来源:博客园
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读
也许感兴趣的
我们推荐的
主题最新
看看其它的
收藏至微信