`

Spring mvc注解说明

 
阅读更多

编号

注解

说明

位置

备注

1

@Controller

将类变成 Spring Bean

现阶段 @Controller @Service 以及 @Repository @Component 注解的作用是等价的

2

@RequestMapping

请求映射

类、方法

标注在类上意指类实现 Controller 接口

标注在方法上意指扩展 Spring 预定义 Controller ( :SimpleFormController)

3

@RequestParam

入参绑定 URL

入参

指定 URL 参数与方法入参的绑定规则

4

@SessionAttributes

设定 Session 范围属性

如: @SessionAttributes("user") ,将把 ModelMap 中的 user 属性添加到 Session 范围

5

@InitBinder

注册 Controller 级的自定义属性编辑器

方法

@InitBinder 注解的方法必须拥有一个 WebDataBinder 类型的入参,以便 Spring MVC 框架将注册属性编辑器的 WebDataBinder 对象传递进来

6

@ModelAttribute

准备引用数据 / ModelMap 属性绑定到入参

方法、入参

标注在方法上:准备引用数据

标注在入参上:将 ModelMap 中的属性绑定到请求处理方法的入参中

 

再来看一下Controller中方法的入参类型:

 

 

编号

请求处理方法入参的可选类型

说明

1

Java 基本数据类型和 String

默认情况下将按名称匹配的方式绑定到 URL 参数上,可以通过 @RequestParam 注解改变默认的绑定规则

2

request/response/session

既可以是 Servlet API 的也可以是 Portlet API 对应的对象, Spring 会将它们绑定到 Servlet Portlet 容器的相应对象上

3

org.springframework.web.context.request.WebRequest

内部包含了 request 对象

4

java.io.InputStream/java.io.Reader

可以借此访问 request 的内容

5

java.io.OutputStream / java.io.Writer

可以借此操作 response 的内容

6

任何标注了 @RequestParam 注解的入参

被标注 @RequestParam 注解的入参将绑定到特定的 request 参数上。

7

java.util.Map / org.springframework.ui.ModelMap

它绑定 Spring MVC 框架中每个请求所创建的潜在的模型对象,它们可以被 Web 视图对象访问(如 JSP

8

命令 / 表单对象(注:一般称绑定使用 HTTP GET 发送的 URL 参数的对象为命令对象,而称绑定使用 HTTP POST 发送的 URL 参数的对象为表单对象)

它们的属性将以名称匹配的规则绑定到 URL 参数上,同时完成类型的转换。而类型转换的规则可以通过 @InitBinder 注解或通过 HandlerAdapter 的配置进行调整

9

org.springframework.validation.Errors / org.springframework.validation.BindingResult

为属性列表中的命令 / 表单对象的校验结果,注意检验结果参数必须紧跟在命令 / 表单对象的后面

10

rg.springframework.web.bind.support.SessionStatus

可以通过该类型 status 对象显式结束表单的处理,这相当于触发 session 清除其中的通过 @SessionAttributes 定义的属性

 

再来看一下Controller中方法的返回类型:

 

编号

请求处理方法入参的可选类型

说明

1

void

此时逻辑视图名由请求处理方法对应的 URL 确定,如以下的方法:

@RequestMapping("/welcome.do")

public void welcomeHandler() {

}

对应的逻辑视图名为“ welcome

2

String

此时逻辑视图名为返回的字符,如以下的方法:

 

@RequestMapping(method = RequestMethod.GET)

public String setupForm(@RequestParam("ownerId") int ownerId, ModelMap model) {

      Owner owner = this.clinic.loadOwner(ownerId);

      model.addAttribute(owner);

      return "ownerForm";

}

 

对应的逻辑视图名为“ ownerForm

3

org.springframework.ui.ModelMap

和返回类型为 void 一样,逻辑视图名取决于对应请求的 URL ,如下面的例子:

 

@RequestMapping("/vets.do")

public ModelMap vetsHandler() {

      return new ModelMap(this.clinic.getVets());

}

 

对应的逻辑视图名为“ vets ”,返回的 ModelMap 将被作为请求对应的模型对象,可以在 JSP 视图页面中访问到。

4

org.springframework.web.servlet.ModelAndView

当然还可以是传统的 ModelAndView

分享到:
评论

相关推荐

    Spring MVC 基于注解实例

    Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于...

    IT学习者Spring MVC注解实例.pdf

    IT学习者Spring MVC注解实例.pdf

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

    在这个“最全的Spring MVC注解例子”中,我们将深入探讨Spring MVC的核心注解,以及如何实现异步请求处理和错误管理。 1. **Spring MVC核心注解** - `@Controller`:标记一个类为处理HTTP请求的控制器。这是Spring...

    Spring MVC 的注解使用实例

    在Spring MVC框架中,注解的使用极大地简化了配置,提高了开发效率。Spring MVC通过注解可以实现控制器、方法映射、模型数据绑定、视图解析等关键功能。本实例将深入探讨Spring MVC中常见的注解及其应用。 1. `@...

    Spring3.0MVC注解(附实例)

    本节将深入探讨Spring MVC注解及其在实际应用中的实现方式。 首先,Spring MVC注解允许开发者以声明式的方式配置控制器,避免了传统的XML配置文件。这极大地简化了代码,提高了可读性和维护性。例如,`@...

    spring mvc 注解例子

    在本文中,我们将深入探讨Spring MVC中的注解用法,并以文章"spring mvc 注解实现"为例进行说明。 首先,`@Controller` 是Spring MVC中定义控制器的基本注解。当标记在一个类上时,表明该类是一个处理HTTP请求的...

    Spring MVC注解项目实例

    总结起来,这个"Spring MVC注解项目实例"涵盖了Spring MVC框架的核心元素,包括注解驱动的控制器、拦截器的使用,以及数据库操作。它为初学者提供了一个动手实践的机会,帮助他们快速掌握Spring MVC的开发技巧。

    spring mvc 注解实例

    在这个注解实例中,我们将深入探讨Spring MVC中的核心注解以及如何利用它们实现对数据库表的增删改查(CRUD)操作。拦截器是Spring MVC中的另一个重要概念,它允许我们在请求处理前后执行自定义逻辑。 首先,让我们...

    spring mvc 注解 增删改 实例

    在这个实例中,我们将重点讨论如何使用Spring MVC的注解进行数据的增删改操作,并结合Hibernate作为ORM(对象关系映射)工具。 首先,`@Controller`注解标记了一个类作为Spring MVC的控制器,负责处理HTTP请求。在...

    基于jpa+hibernate+spring+spring mvc注解方式项目

    **基于JPA+Hibernate+Spring+Spring MVC注解方式项目详解** 在现代Java Web开发中,Spring框架扮演了核心角色,而Spring MVC作为其MVC(Model-View-Controller)实现,提供了强大的Web应用程序构建能力。同时,JPA...

    基于注解Spring MVC环境搭建

    在“基于注解的Spring MVC环境搭建”中,我们将深入探讨如何利用注解来简化配置,快速建立一个运行中的Web项目。这篇博文(尽管描述为空,但提供了链接)很可能是关于创建一个基本的Spring MVC项目并使用注解来管理...

    spring mvc注解实例

    3. `<mvc:annotation-driven>`:这是 Spring MVC 的一个重要注解,它启用了 Spring MVC 对注解的支持,例如 `@RequestMapping`, `@RequestParam`, `@PathVariable` 等,使得我们可以使用注解来处理请求映射和参数...

    Spring MVC注解开发总结

    一、Spring MVC注解开发的基本实现步骤 1. **创建Web工程**:首先需要创建一个Java Web项目,包含Web-INF目录结构,以便存放Web应用的相关配置文件。 2. **设置Tomcat服务器**:配置并启动Tomcat服务器,作为Web...

    Spring mvc 注解Demo

    在本"Spring MVC注解Demo"中,我们将深入探讨如何利用注解简化Spring MVC的配置和控制器的实现,使其更适合初学者快速上手。 在Spring MVC中,注解的使用大大减少了XML配置,使得代码更加简洁且易于理解。以下是...

    spring mvc注解方式

    **Spring MVC注解方式** 1. **Controller注解**:`@Controller`是Spring MVC中的核心注解,用于标记一个类作为处理HTTP请求的控制器。在类上添加此注解后,Spring会将该类实例化,并将其纳入到Spring容器中管理。 ...

    Spring3_MVC注解教程.ppt

    Spring3_MVC注解教程.ppt

    Spring mvc 注解理解

    Spring MVC 是一个强大的...总之,Spring MVC的注解机制大大简化了Web应用的开发,降低了学习曲线,使得更多开发者能够轻松上手。随着Spring框架的不断发展,我们可以期待更多创新和改进,以适应不断变化的开发需求。

    SPRING MVC注解实例

    对spring mvc注解的实例

    Spring MVC实例 MVC注解配置

    在这个实例中,我们将探讨如何利用MVC注解配置来简化Spring MVC应用的设置和管理。MVC模式(Model-View-Controller)是软件设计的一种经典模式,它将业务逻辑、数据和用户界面分离,使得代码更加模块化,易于维护。 ...

    spring mvc注解教程

    spring现在用的相当广泛,注解也非常方便,对于不算太大的项目注解非常省力

Global site tag (gtag.js) - Google Analytics