上一篇文章我们写了SpringMVC的一些注解,本篇我们来进一步聊一下 SpringMVC 的其他注解,上一篇没有看的可以去公众号的历史推广中看一下也可点击下方链接查阅。
该注解主要是用于将请求URL中的模板变量映射到功能处理方法的参数上。从 URL 中取出值作为参数.
类似于request.getParameter(“parName”),
常用参数:
1 : defaultValue = “0”(设置默认值),
2 : required = false(通过boolean设置是否是必须要传入的参数),
3 : value = “isApp”(接受的传入的参数类型);
请求路径上有个id的变量值,可以通过@PathVariable来获取@RequestMapping(value="/page/{id}",method=RequestMethod.GET)
@RequestParam用来获得静态的URL请求入参,spring注解时action里用到。
通过使用HandlerAdapter 配置的`HttpMessageConverters`来解析post data body,然后绑定到相应的bean上的。接收到的结果放在一个MultiValueMap<string string="">中.</string>
用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用.比如我们页面需要回传一个 JSON 就可以用这个配置来完成.比如在页面上打出一个 HelloWorld.
用于注解dao层,在daoImpl类上面注解。
1 : params属性;
2 : method属性;
3 : headers属性;
1 : params属性,如下图程式
分别表示参数par1 的值必须等于value1,参数par2 必须存在,值无所谓,参数par3 必须不存在.
2 : method属性
使用method 参数限制了以GET 或DELETE 方法请求/testMethod 的时候才能访问到该Controller 的testMethod 方法。
3 : headers属性
headers 属性的用法和功能与params 属性相似。在上面的代码中当请求/testHeaders.do 的时候只有当请求头包含Accept 信息,且请求的host 为localhost 的时候才能正确的访问到testHeaders 方法。
@RequestHeader 注解,可以把Request请求header部分的值绑定到方法的参数上。简单的说就是抓请求的头信息里面我们想要的某些信息.比如下面的程式我们从头信息中拿到了 Accept-Encoding & Keep-Alive 信息.
把Request header中关于cookie的值绑定到方法的参数上。
context:component-scan base-package =”” /
component-scan 默认扫描的注解类型是 @Component。
@Component的子注解@Service,@Reposity等;
如果你只想扫描指定包下面的Controller或其他内容则设置use-default-filters属性为false,表示不再按照scan指定的包扫描,而是按照
以上就是今天主讲的主要内容,后期我们将持续讲解 Spring的其他注解.欢迎持续关注.