`
youyu4
  • 浏览: 424932 次
社区版块
存档分类
最新评论

Spring MVC 之注解式控制器

 
阅读更多

Spring MVC 之注解试控制器

 

发展历程

 

1. Spring2.5之前,我们都是通过实现Controller接口或其实现来定义我们的处理器类。已经不建议使用了。

 

 

2. pring2.5引入注解式处理器支持,通过@Controller 和 @RequestMapping注解定义我们的处理器类。

并且提供了一组强大的注解

 

@Controller:用于标识是处理器类;

@RequestMapping:请求到处理器功能方法的映射规则;

@RequestParam:请求参数到处理器功能处理方法的方法参数上的绑定;

@ModelAttribute:请求参数到命令对象的绑定;

@SessionAttributes:用于声明session级别存储的属性,放置在处理器类上,通常列出

模型属性(如@ModelAttribute)对应的名称,则这些属性会透明的保存到session中;

@InitBinder:自定义数据绑定注册支持,用于将请求参数转换到命令对象属性的对应类型;

 

 

3. Spring3.0引入RESTful架构风格支持(通过@PathVariable注解和一些其他特性支持),且又引入了更多的注解支持:

 

    @CookieValue:cookie数据到处理器功能处理方法的方法参数上的绑定;

    @RequestHeader:请求头(header)数据到处理器功能处理方法的方法参数上的绑定;

    @RequestBody:请求的body体的绑定(通过HttpMessageConverter进行类型转换);

    @ResponseBody:处理器功能处理方法的返回值作为响应体(通过HttpMessageConverter进行类型转换);

    @ResponseStatus:定义处理器功能处理方法/异常处理器返回的状态码和原因;

    @ExceptionHandler:注解式声明异常处理器;

    @PathVariable:请求URI中的模板变量部分到处理器功能处理方法的方法参数上的绑定,从而支持RESTful架构风格的URI;

 

 

4. Spring3.1使用新的HandlerMapping 和 HandlerAdapter来支持@Contoller和@RequestMapping注解处理器。

 

      新的@Contoller和@RequestMapping注解支持类:处理器映射RequestMappingHandlerMapping和处理器适配器RequestMappingHandlerAdapter组合来代替Spring2.5开始的处理器映射DefaultAnnotationHandlerMapping和处理器适配器AnnotationMethodHandlerAdapter,提供更多的扩展点。

 

 

 

请求的映射分为如下几种:

 

      1. URL路径映射:使用URL映射请求到处理器的功能处理方法;

      2. 请求方法映射限定:如限定功能处理方法只处理GET请求;

      3. 请求参数映射限定:如限定只处理包含“abc”请求参数的请求;

      4. 请求头映射限定:如限定只处理“Accept=application/json”的请求。

 

 

 

记住http请求的六个部分

 

      1. 请求方法,如GET或POST,表示提交的方式;

      2. URL,请求的地址信息;

      3. 协议及版本;

      4. 请求头信息(包括Cookie信息);

      5. 回车换行(CRLF);

      6. 请求内容区(即请求的内容或数据),如表单提交时的参数数据、URL请求参数(?abc=123 ?后边的)等。

 

分享到:
评论

相关推荐

    学习Spring MVC,关于注解的Spring MVC,简单例子,关于控制器的Spring MVC,学习Spring,简单Spring MVC实例

    学习Spring MVC,关于注解的Spring MVC,简单例子,关于控制器的Spring MVC,学习Spring,简单Spring MVC实例

    Spring MVC学习(六)-------注解式控制器详解1

    Spring MVC学习(六)-------注解式控制器详解1

    Spring+Spring mvc+Hibernate+Bootstrap、企业级员工信息管理系统

    后台全注解式的开发(除了必要的spring和hibernate的xml配置以外) 03. 后台通过自定义注解结合一个访问拦截器实现整个系统的权限控制 04. 系统前台采用全采用的Html+jQuery开发 05. 系统前台与后台的交互全部...

    类似Spring MVC web控制器

    实现类似Spring mvc注解方式的部分功能

    Spring3MVC注解教程.ppt

    本地化:Spring MVC的本地化解析器 LocaleChangeInterceptor:通过URL参数指定 静态资源处理 静态资源处理:使REST风格的URL成为实现 静态资源处理:原理 静态资源处理:如何配置? 静态资源处理:如何配置? 物理...

    全面掌握Spring MVC:从基础到高级的实践指南

    在Spring MVC中,DispatcherServlet作为前端控制器,负责请求的接收和响应结果的处理。处理器映射器(HandlerMapping)和处理器适配器(HandlerAdapter)是核心组件,负责找到和调用适当的处理器(Controller)。 ...

    21道Java Spring MVC综合面试题详解含答案(值得珍藏)

    强化注解的使用,在控制器、Service、Dao都可以使用注解,方便灵活。 Spring MVC的工作流程如下: 用户通过视图层发送请求到服务器。 在服务器中请求被Controller接收,Controller调用相应的Model层处理请求,处理...

    Spring MVC 3.0实战指南.ppt

    本地化:Spring MVC的本地化解析器 本地化:Spring MVC的本地化解析器 LocaleChangeInterceptor:通过URL参数指定 静态资源处理 静态资源处理:使REST风格的URL成为实现 静态资源处理:原理 静态资源处理:如何配置? ...

    Spring Web MVC入门教程

    第三章:注解式控制器开发详解 包括:注解式开发HelloWorld、处理器定义、请求映射、REST风格支持、请求数据映射、数据绑定等诸多内容 第四章:数据类型转换 包括:简介、内建类型转换器、自定义类型转换器等 第五...

    SpringMVC教程

    第六章 注解式控制器详解1(注解式控制器运行流程及处理器定义).pdf 第六章 注解式控制器详解2(SpringMVC3强大的请求映射规则详解).pdf 第六章 注解式控制器详解3(生产者、消费者请求限定).pdf 第六章 注解式控制器...

    Spring3MVC注解教程

    Spring3MVC注解教程: 1.Spring MVC框架简介 2.HTTP请求地址映射 3.HTTP请求数据的绑定 4.数据转换、格式化、校验 5.数据模型控制 6.视图及解析器 7.其它

    spring-mvc 注解方式xml配置

    使用spring-mvc 注解方式 注入 Controller 控制器 访问路径 精确到方法名 无需 多余注解 简单方便 附带实例

    Spring MVC 3.0实战指南

    支持REST风格的URL 添加更多注解,可完全注解驱动 引入HTTP输入输出转换器...和数据转换、格式化、验证框架无缝集成 对静态资源处理提供特殊支持 更加灵活的控制器方法签名,可完全独立于Servlet API

    spring mvc 3.2 参考文档

    Spring的视图解析也非常灵活,控制器通常负责准备含有数据的model Map并选择一种视图名称,当然,它也可以直接直接写响应流,并完成该请求。视图名称解析可以根据文件扩展名或者Accept头内容类型协商,通过bean的...

    Spring3_MVC注解教程.ppt

    Spring MVC框架简介 HTTP请求地址映射 HTTP请求数据的绑定 数据转换、格式化、校验 数据模型控制 视图及解析器

    跟我学SpringMVC 教程

    第六章 注解式控制器详解 Spring MVC 3.1新特性 生产者、消费者请求限定 第六章 注解式控制器详解 SpringMVC强大的数据绑定(1) 第六章 注解式控制器详解 SpringMVC强大的数据绑定(2) 第七章 注解式控制器的...

    Spring3_MVC注解

    spring3 mvc 注解 支持REST风格的URL 添加更多注解,可完全注解驱动 引入HTTP输入输出转换器(HttpMessageConverter) 和数据转换、格式化、验证框架无缝集成 对静态资源处理提供特殊支持 更加灵活的控制器方法签名...

    Spring3_MVC注解教程

    参考《Spring3.x企业应用开发实战》springMVC框架结构简介、 HTTP请求地址映射、数据转换、数据模型控制、视图及解析器

    Spring+MVC+Mybatis 书城项目

    Spring MVC: Spring MVC是Spring框架的一个模块,它实现了MVC(模型-视图-控制器)设计模式,用于构建Web应用。Spring MVC允许你将应用的逻辑、数据和用户界面分离,使得代码更加清晰和易于维护。 MyBatis: MyBatis...

Global site tag (gtag.js) - Google Analytics