Spring注解学习

今天学习注解在SpirngMVC中的应用

1.@Controller

注解Controller用来注解类,表示该类为一个实现Controller接口的类,使用Spring注解后可以支持同时处理多个请求。
为了保证Spring能找到Controller类,需要在ApplicationContext-mvc.xml配置文件中声明:

<!-- 启用注解 -->
<context:annotation-config />
<!-- 启用包扫描功能 -->
<context:component-scan base-package="wzq.web.test.controller" />

wzq.web.test.controller为Controller类的所属包名。Spring中所有请求都有标注该注解后的类来处理,对应的请求通过筛选交给该类,类中再查找对应方法处理该请求。请求可分为4类,并交给对应注解进行处理(只介绍常用注解):

a)处理request body的注解:@RequestParam、@RequestBody
b)处理request uri的注解:@PathVariable。
c)处理request header部分的注解:@RequestHeader、@CookieValue。
d)处理attibute类型的注解:@SessionAttributes、@ModelAttribute。
代码在《初识Web中编写》不再说明。

2.@RequestMapping

@RequestMapping注解用来表示某个类或者方法来处理请求动作。
1)注解类
@RequestMapping用来注解类表示该类中的所有@RequestMapping注解的方法请求地址前为类@RequestMapping注解中value值。举例:如果Controller类被标注为@RequestMapping(value=”/hello”),类中处理方法注解为@RequestMapping(value=”/zhangsan”),那么该方法去处理的请求为“/hello/zhangsan”,而不是直接的“/zhangsan”。
2)注解方法
@RequestMapping注解方法后表示该方法为一个请求处理方法,可处理@RequestMapping中value值对应的请求地址。
3)注解支持的属性
value,name,method,consumes,produces,params,headers,Path。

3.@RequestParam

@RequestParam用来注释参数,该注解将请求中的参数赋值给方法中的参数(省略自己从请求中获取参数的代码编写工作)。
注解支持的属性
name,value,required,defaultValue。

4.@PathVariable

@PathVariable用来注释参数,从URL中获取动态参数,赋值到方法参数上,如果省略value,默认赋值给同名参数。

5.@RequestHeader

@RequestHeade用来注释参数,r获取请求的头部信息赋值到方法参数上。

6.@SessionAttributes

@SessionAttributes用来注释类,将Model中的属性转存到HttpSession中对象中,页面可从HttpSession中获取数据,获取举例:

requestScope.user.username//request(Model) {sessionScope.user.username}
//从session中获取。

7.@ModelAttribute

@ModelAttribute可注释方法或者参数,将方法的返回值绑定到Model对象(支持自定义类)中,只有value一个属性。
注意:被该注解注释的方法会先于其他的方法执行。

版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值