- 浏览: 932302 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (251)
- WebService (17)
- IBatis (22)
- Hibernate (1)
- SpringMVC - 基础篇 (32)
- Spring (15)
- Java (11)
- JVM及调优 - 基础篇 (4)
- 集群 (14)
- 数据库 (17)
- WebSphere (5)
- 多线程 (4)
- 集合、容器 (2)
- DB Pool (1)
- Power Designer (5)
- Maven基础 (5)
- JS (14)
- WEB 前端 (5)
- 实用小工具 (17)
- 社会、人 (2)
- 乱七八糟 (18)
- ASM&CGLIB - 基础篇 (12)
- 缓存 (1)
- 性能 (1)
- 设计之殇 (1)
- 分布式事务 (1)
- 单点登录 (11)
- 分布式 Session (4)
- Memcached - 基础篇 (6)
最新评论
-
一笑_奈何:
楼主写的还真行不错。
扫盲贴 - J2EE集群之JNDI集群实现 -
xuezhongyu01:
博主写的很详细,但最后还是没明白,最后调用BasicDataS ...
Spring中的destroy-method方法 -
Mr梁:
commons-fileupload.jar commons- ...
SpringMVC 中文件上传 MultipartResolver -
Eywa:
总结的很不错
ORACLE CASE WHEN 及 SELECT CASE WHEN的用法 -
TryRelax:
fastjson 比 jackson 好用吧?
Spring MVC Jackson DateFormat
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 。 |
附件是完整的工程。
- SpringMVC.zip (6.9 MB)
- 下载次数: 88
发表评论
-
SpringMVC中内容协商【统一资源多种展现json xml html】
2013-09-12 15:58 3425在我们实际的开发中,往往需要SpringMVC ... -
Spring为某个属性注入值或为某个方法的返回值
2013-08-26 16:02 1486项目中用到需要初始化一些数据,Spring提供了filed的 ... -
SpringMVC 基础知识点小结
2013-08-23 15:26 2268参照:http://zachary-g ... -
使用SpringMVC Restful 开发思考
2013-03-18 14:23 1273一、rest思想 此部分 ... -
Spring MVC Jackson DateFormat
2012-10-14 15:59 2231使用Spring MVC 里的Jackson返回JSON时,遇 ... -
SpringMVC 中文件上传 MultipartResolver
2011-12-17 17:44 55161基于前面文章的基础上。 一、准备 需要的jar ... -
SpringMVC 异常处理初探
2011-12-12 12:18 8235Web应用中对于异常的处理方式与其他形式的应用并没有太大的不同 ... -
SpringMVC 使用JSR-303进行校验 @Valid
2011-12-11 18:04 31559一、准备校验时使用的JAR 说明: ... -
SpringMVC拦截器简单使用
2011-12-10 22:17 93572基于上一篇文章的基础上 一、拦截器的配置 1、 ... -
SpringMVC生成JSON(三)
2011-12-10 01:16 20637基于上一篇文章的代码基础上 一、准备工作 1、 下载依赖库 ... -
SpringMVC生成JSON(二)
2011-12-06 21:24 8277基于上一篇文章的代码基础上 开始Jackson之旅。 一、准 ... -
SpringMVC 生成JSON(一)
2011-12-04 19:37 3310本示例基于前面几篇文章的代码。 一、JSON-lib框 ... -
Spring MVC处理重定向的传参
2011-12-03 21:35 6539一、Spring MVC是如何处理重定向的传参? 现提供一种 ... -
Spring MVC3.0的RESTFul方式的访问
2011-12-03 20:59 1631上一篇以简单介绍了 ... -
SpringMVC之用注解控制器
2011-12-03 19:53 2527在传统的Spring MVC开发方法中,必须在Bean配置 ... -
SpringMVC例子代码小汇总
2011-11-20 11:18 1905一、结构 二、Jar版本及使用jar包 ... -
SpringMVC 拦截器实现分析
2011-11-20 00:10 5390一、Servlet Filter与Spring interce ... -
SpringMVC学习笔记(三) --- 映射处理器(续)
2011-10-07 21:46 1668<?xml version="1.0" ... -
SpringMVC学习笔记(二) --- 后端控制器之MultiActionController(一)
2011-10-07 21:07 2044创建处理多个请求的控制器 根据"每个请求一个 ... -
SpringMVC学习笔记(二) --- 后端控制器之CommandController、 FormController(三)
2011-10-07 16:09 2989另一种表单封装的参数的Controller是AbstractC ...
相关推荐
本项目"Android-使用kotlin开发的仿EMUI备忘录"就是基于Kotlin语言,模仿华为手机的EMUI备忘录功能,并利用ObjectBox这一高性能的对象数据库框架来处理本地数据存储。接下来,我们将深入探讨如何在Android应用中结合...
Eclipse图标含义备忘录这篇文章提供了一系列Eclipse内部的图标及其含义,有助于开发者更好地理解和使用Eclipse环境。 首先,文章提到了不同类型的Java文件和它们在Eclipse中的表示。例如,CompilationUnit(*.java)...
在“Java反射备忘录”中,我们可能探讨了以下核心概念: 1. 反射机制的基本概念:Java反射提供了一种在运行时分析类和对象的能力,使得程序能够动态地创建对象、调用方法、访问和修改字段值,即使这些信息在编译时...
例如,`@Component`、`@Service`、`@Repository`和`@Controller`注解分别用于标记不同的组件,`@Autowired`用于自动装配依赖,`@Transactional`用于标记事务处理方法。 **Hibernate** 是一个对象关系映射(ORM)...
【标题】:“临时备忘录”通常指的是在编程或IT工作中用于记录临时性问题解决方案、技术要点或待处理事项的文档。这样的备忘录有助于提高工作效率,减少重复工作,便于团队成员之间的信息共享。 【描述】:虽然描述...
- `@Test`: 标记为测试方法,通常包含一个断言来验证预期结果。 - `@Before`: 在每个测试方法之前执行的方法,用于初始化测试环境。 - `@After`: 在每个测试方法之后执行的方法,用于清理资源或状态。 - `@...
接下来,我们可以创建一个类并使用自定义注解标记某个字段: ```java public class AnnotationDemo { @MyCustomAnnotation("测试注解") private String testField; } ``` 现在,我们可以使用反射机制来获取这个...
MATLAB 函数备忘录 MATLAB 是一种高级编程语言和环境,广泛应用于科学计算、数据分析、算法开发、数据可视化等领域。以下是 MATLAB 中常用的函数备忘录,涵盖了数学函数、三角函数、向量函数、永久常数、绘图函数等...
MATLAB函数备忘录 MATLAB是一种高性能的技术计算语言,它提供了大量的数学函数和工具来帮助用户进行科学计算和数据分析。下面是MATLAB中的一些常用函数备忘录: 一、基本数学函数 * abs(x):纯量的绝对值或向量的...
在这个例子中,`RootClass`被`@XmlRootElement(name="rootclass")`注解标记,这意味着该类实例化后生成的XML文档的根元素名为`rootclass`。此外,`EleClassA`和`EleClassB`的属性也将根据其所在的位置和使用的注解被...
在本篇“jQuery+json+struts2 开发备忘录(一)”中,我们将探讨如何使用这三种技术来构建高效且用户友好的Web应用程序。jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。JSON...
在本主题中,我们将探讨“每周日程规划备忘录excel模版”,它是一个非常实用的工具,可以帮助我们系统地规划和追踪每周的工作任务。 模版设计通常包括以下几个核心部分: 1. **标题区域**:模版的顶部会有一个标题...
例如,`@Component`、`@Service`、`@Repository`和`@Controller`这些注解用于标记不同类型的bean,使Spring自动扫描并管理这些类。此外,`@Autowired`用于依赖注入,使得对象之间的关联配置变得更加简洁。 接着,...
### Spring Java注解、元注解与自定义注解详解 #### 一、Java注解简介 在深入了解Spring框架中的注解应用之前,我们首先需要对Java注解有一个基本的认识。Java注解(Annotation)是一种元数据,可以为程序代码添加...
接下来,创建一个切面类,该类包含一个或多个通知方法,这些方法将在注解标记的方法执行前后被调用。下面是一个简单的切面示例: ```java @Aspect @Component public class LoggingAspect { @Around("@annotation...
例如,`@Action` 注解用于标记一个方法作为处理请求的动作,`@Result` 注解则用来定义请求处理后的结果页面。 **Spring** 是一个全面的Java企业级应用框架,它支持依赖注入(DI)和面向切面编程(AOP)。在Spring中,...
【标题】: "Java编程备忘录" 在Java编程领域,备忘录是开发者记录关键概念、技巧和问题解决方案的重要工具。以下是一些核心的Java知识点,这些内容可能包含在"MEMO-master"这个压缩包文件中: 1. **基础语法**:...
在 BbtForumController 中,我们使用 @RequestMapping 注解来标记 listAllBoard 方法,以便将其映射到 "/forum.do" URL 上。 使用 @Autowired 注解 @Autowired 注解用于将一个 Bean 注入到一个 Controller 中。在 ...
SSH注解开发是SSH框架中的一项重要技术,它允许开发者在不写XML配置的情况下进行开发,提高开发效率并减少配置错误。 标题“ssh注解开发案例”表明我们将探讨如何在SSH框架中使用注解进行开发。SSH框架通过注解可以...