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

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中常见的注解及其应用。 1. `@Controller` 注解:这个注解用于标记一个类作为Spring MVC的控制器。当...

    Spring MVC jar包

    Spring MVC 是一个基于Java的轻量级Web应用框架,它为开发者提供了模型-视图-控制器(MVC)架构,使开发人员能够更好地组织和分离应用程序的业务逻辑、数据处理和用户界面。Spring MVC是Spring框架的一个核心组件,...

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

    在本教程中,我们将深入探讨Spring MVC的核心概念,特别是关于注解的使用以及简单的控制器实现。 首先,Spring MVC的核心组件包括DispatcherServlet、Controller、ModelAndView、ViewResolver等。DispatcherServlet...

    最全的Spring MVC注解例子,异步请求,错误处理

    总的来说,这个压缩包提供了学习和实践Spring MVC注解的全面示例,涵盖了核心的控制器定义、请求映射、数据绑定,以及异步处理和错误处理机制。通过这个例子,开发者能够更好地理解和掌握Spring MVC的使用,提升其在...

    spring MVC .docx

    Spring MVC支持注解式控制器,例如`@RequestMapping`、`@GetMapping`、`@PostMapping`等,使得控制器的编写更为简洁。 3. **Model**: 模型是业务数据的载体,它可以是简单的Java对象(POJO)。在处理请求时,控制器...

    基于注解Spring MVC环境搭建

    这篇博文(尽管描述为空,但提供了链接)很可能是关于创建一个基本的Spring MVC项目并使用注解来管理控制器、视图解析和其他关键组件的教程。 1. **Spring MVC简介** Spring MVC是Spring框架的一部分,它提供了...

    Spring MVC 教程快速入门 深入分析

    三、Spring MVC核心流程图:描述了Spring MVC处理请求的流程,包括前端控制器接收请求,经过分发器分发给具体的控制器,然后由控制器处理业务逻辑,最后将结果返回给用户。 四、Spring MVC DispatcherServlet说明:...

    spring mvc + spring + hibernate 全注解整合开发视频教程 11

    在这个视频教程中,你可能将学习到如何配置Spring的XML上下文文件以启用注解驱动的配置,如何在Spring MVC中创建注解式的控制器并处理HTTP请求,以及如何通过Hibernate的注解来设计数据模型并执行CRUD操作。...

    spring mvc + spring + hibernate 全注解整合开发视频教程 12

    Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序的前端控制器。它提供了模型-视图-控制器(MVC)架构模式的实现,使得业务逻辑与用户界面分离,提高了代码的可测试性和可维护性。Spring MVC通过注解如@...

    Spring3.0MVC注解(附实例)

    首先,Spring MVC注解允许开发者以声明式的方式配置控制器,避免了传统的XML配置文件。这极大地简化了代码,提高了可读性和维护性。例如,`@RequestMapping`注解就是其中的关键,它可以在类级别或方法级别使用,用于...

    Mastering Spring MVC 4(2015.09)源码

    总的来说,"Mastering Spring MVC 4(2015.09)源码"提供了深入学习Spring MVC的机会,你可以通过阅读和分析源码来了解如何配置DispatcherServlet、怎样编写控制器、如何进行数据绑定与验证,以及如何利用拦截器等特性...

    Spring.MVC-A.Tutorial-Spring.MVC学习指南 高清可复制版PDF

    Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。这个教程“Spring MVC - A Tutorial”旨在帮助开发者深入理解和掌握Spring MVC的核心概念和...

    最全最经典spring-mvc教程

    首先,Spring MVC的基础架构包括DispatcherServlet(前端控制器)、Model、View和Controller。DispatcherServlet是整个流程的入口,负责接收请求并分发到相应的Controller。Controller是业务逻辑处理的核心,Model...

    spring mvc 4.0

    3. **注解驱动的控制器**:Spring MVC 4.0广泛使用了Java注解,如@Controller、@RequestMapping等,使控制器类的定义更加简洁,减少了XML配置。 4. **路径变量**:在@RequestMapping注解中,可以使用路径变量(path...

    Spring mvc 教程

    - **使用@Controller 注解定义一个控制器**:通过这个注解可以将类标记为一个控制器,Spring 会自动检测并将其纳入管理。 - **使用@RequestMapping 注解映射请求路径**:此注解用于指定控制器处理的具体 URL 路径...

    类似Spring MVC web控制器

    Spring MVC作为Java领域中最流行的MVC(Model-View-Controller)框架之一,提供了强大的控制器概念,允许开发者通过注解轻松地定义和管理HTTP请求处理逻辑。本主题将深入探讨如何实现一个类似Spring MVC的Web控制器...

    Spring mvc 超简完整注解可运行Demo

    3. **模型-视图-控制器**(MVC)架构:Spring MVC 遵循 MVC 设计模式,将应用程序逻辑分离为模型(Model)、视图(View)和控制器(Controller)。模型处理业务逻辑,控制器负责协调模型和视图,视图则负责数据的...

Global site tag (gtag.js) - Google Analytics