spring 学习requestMapping

与天地兮比寿,与日月兮齐光。这篇文章主要讲述spring 学习requestMapping相关的知识,希望能为你提供帮助。
1:     @RequestMapping:处理请求地址映射的请求,有6个属性?
`         value:   URL 地址
  method:     GET/POST/PUT/DELETE
          consumes:  :指定处理请求的提交内容(Content-Type),例如:application/json, text/html
  produces:  指定返回的内容类型,仅当request的Accept类型中包含该指定类型才返回
  parameters:  指定request必须包含哪些参数才让这个处理
RequestMapping (value= "https://www.songbingjia.com/android/testParams" , params={ "param1=value1" , "param2" , "!param3" })/param1  的值必须等
于value1  ,参数param2  必须存在,值无所谓,参数param3  必须不存在
  headers:     指定request中必须包含某些指定的header值,才能让该方法处理
【spring 学习requestMapping】2:     @Resource    @Autowired     
都是在注入bean的时候用.
相同点: 二者都写在字段或者setter方法.
  不同点:@AutoWired默认是按byType装配,默认情况下要求bean必须存在,可以用requered=false表示允许是null。
    如果是byName(id)装配,可以结合 @Qualifier注解一起使用。
  @Resource默认是按照ByName(bean id)自动注入,可以用name和type属性指定装配方式。
3: Spring MVC其他常用注解
      @ModelAttribute 
这个在AC面试的时候考察了:当我们请求  /myTest/sayHello.do  的时候使用  @ModelAttribute  标记的方法会先执行,然后把它们返回的对象存放到模型中。最终访问到  sayHello  方法的时候,使用  @ModelAttribute  标记的方法参数都能被正确的注入值。
      @SessionAttributes

@Controller

@RequestMapping ( "/myTest" )

@SessionAttributes (value=https://www.songbingjia.com/android/{"intValue" , "stringValue" }, types={User. class })

      指定了属性为  intValue  或  stringValue  或者类型为  User  的都会放到  Session中.
 
@PathVariable:  请求参数中变量
@RequestParameter:  三个常用参数:  defaultvalue=https://www.songbingjia.com/android/”xx”/required=false/value=”xxx”
@ResponseBody: 将controller方法返回的队形,通过适当的HttpMessageConverer转化为指定格式后,写入到Response对象的body数据区。当返回的是jason/XML 等的时候用。
@Component
@Repository: 用在dao层上
@CookieValue:
@RequestHeader:  把header上的值绑定到参数
@RequestBody:该注解常用来处理Content-Type: 不是application/x-www-form-urlencoded编码的内容,例如application/json, application/xml等;
它是通过使用HandlerAdapter 配置的HttpMessageConverters来解析post data body,然后绑定到相应的bean上的。



    推荐阅读