Spring MVC数据绑定大全 .

简介:

刚开始用spring mvc 做web开发时,经常会不知道如何合适绑定页面数据.用惯struts2的朋友更认为spring mvc 绑定数据不如struts2方便(本人最开始也是这么认为),经过一段时间的应用和测试,总结出以下几种情况,希望对刚接触spring mvc 的朋友有所帮助.

示例程序下载

查看spring源码可以看出spring支持转换的数据类型已经很多了.

 

org.springframework.beans.PropertyEditorRegistrySupport.java

[java]  view plain copy print ?
  1. /** 
  2.      * Actually register the default editors for this registry instance. 
  3.      */  
  4.     private void doRegisterDefaultEditors() {  
  5.         this.defaultEditors = new HashMap<Class, PropertyEditor>(64);  
  6.         // Simple editors, without parameterization capabilities.   
  7.         // The JDK does not contain a default editor for any of these target types.   
  8.         this.defaultEditors.put(Charset.classnew CharsetEditor());  
  9.         this.defaultEditors.put(Class.classnew ClassEditor());  
  10.         this.defaultEditors.put(Class[].classnew ClassArrayEditor());  
  11.         this.defaultEditors.put(Currency.classnew CurrencyEditor());  
  12.         this.defaultEditors.put(File.classnew FileEditor());  
  13.         this.defaultEditors.put(InputStream.classnew InputStreamEditor());  
  14.         this.defaultEditors.put(Locale.classnew LocaleEditor());  
  15.         this.defaultEditors.put(Pattern.classnew PatternEditor());  
  16.         this.defaultEditors.put(Properties.classnew PropertiesEditor());  
  17.         this.defaultEditors.put(Resource[].classnew ResourceArrayPropertyEditor());  
  18.         this.defaultEditors.put(TimeZone.classnew TimeZoneEditor());  
  19.         this.defaultEditors.put(URI.classnew URIEditor());  
  20.         this.defaultEditors.put(URL.classnew URLEditor());  
  21.         // Default instances of collection editors.   
  22.         // Can be overridden by registering custom instances of those as custom editors.   
  23.         this.defaultEditors.put(Collection.classnew CustomCollectionEditor(Collection.class));  
  24.         this.defaultEditors.put(Set.classnew CustomCollectionEditor(Set.class));  
  25.         this.defaultEditors.put(SortedSet.classnew CustomCollectionEditor(SortedSet.class));  
  26.         this.defaultEditors.put(List.classnew CustomCollectionEditor(List.class));  
  27.         this.defaultEditors.put(SortedMap.classnew CustomMapEditor(SortedMap.class));  
  28.         // Default editors for primitive arrays.   
  29.         this.defaultEditors.put(byte[].classnew ByteArrayPropertyEditor());  
  30.         this.defaultEditors.put(char[].classnew CharArrayPropertyEditor());  
  31.         // The JDK does not contain a default editor for char!   
  32.         this.defaultEditors.put(char.classnew CharacterEditor(false));  
  33.         this.defaultEditors.put(Character.classnew CharacterEditor(true));  
  34.         // Spring's CustomBooleanEditor accepts more flag values than the JDK's default editor.   
  35.         this.defaultEditors.put(boolean.classnew CustomBooleanEditor(false));  
  36.         this.defaultEditors.put(Boolean.classnew CustomBooleanEditor(true));  
  37.         // The JDK does not contain default editors for number wrapper types!   
  38.         // Override JDK primitive number editors with our own CustomNumberEditor.   
  39.         this.defaultEditors.put(byte.classnew CustomNumberEditor(Byte.classfalse));  
  40.         this.defaultEditors.put(Byte.classnew CustomNumberEditor(Byte.classtrue));  
  41.         this.defaultEditors.put(short.classnew CustomNumberEditor(Short.classfalse));  
  42.         this.defaultEditors.put(Short.classnew CustomNumberEditor(Short.classtrue));  
  43.         this.defaultEditors.put(int.classnew CustomNumberEditor(Integer.classfalse));  
  44.         this.defaultEditors.put(Integer.classnew CustomNumberEditor(Integer.classtrue));  
  45.         this.defau


本文转自茄子_2008博客园博客,原文链接:http://www.cnblogs.com/xd502djj/p/3245485.html ,如需转载请自行联系原作者。

目录
相关文章
|
30天前
|
缓存 前端开发 Java
Spring MVC 面试题及答案整理,最新面试题
Spring MVC 面试题及答案整理,最新面试题
85 0
|
30天前
ssm(Spring+Spring mvc+mybatis)——updateDept.jsp
ssm(Spring+Spring mvc+mybatis)——updateDept.jsp
10 0
|
30天前
ssm(Spring+Spring mvc+mybatis)——showDept.jsp
ssm(Spring+Spring mvc+mybatis)——showDept.jsp
9 0
|
29天前
|
SQL JavaScript Java
springboot+springm vc+mybatis实现增删改查案例!
springboot+springm vc+mybatis实现增删改查案例!
23 0
|
29天前
|
SQL Java 数据库连接
挺详细的spring+springmvc+mybatis配置整合|含源代码
挺详细的spring+springmvc+mybatis配置整合|含源代码
35 1
|
7天前
|
数据采集 前端开发 Java
数据塑造:Spring MVC中@ModelAttribute的高级数据预处理技巧
数据塑造:Spring MVC中@ModelAttribute的高级数据预处理技巧
21 3
|
7天前
|
存储 前端开发 Java
会话锦囊:揭示Spring MVC如何巧妙使用@SessionAttributes
会话锦囊:揭示Spring MVC如何巧妙使用@SessionAttributes
13 1
|
7天前
|
前端开发 Java Spring
数据之桥:深入Spring MVC中传递数据给视图的实用指南
数据之桥:深入Spring MVC中传递数据给视图的实用指南
24 3
|
16天前
|
前端开发 安全 Java
使用Java Web框架:Spring MVC的全面指南
【4月更文挑战第3天】Spring MVC是Spring框架的一部分,用于构建高效、模块化的Web应用。它基于MVC模式,支持多种视图技术。核心概念包括DispatcherServlet(前端控制器)、HandlerMapping(请求映射)、Controller(处理请求)、ViewResolver(视图解析)和ModelAndView(模型和视图容器)。开发流程涉及配置DispatcherServlet、定义Controller、创建View、处理数据、绑定模型和异常处理。
使用Java Web框架:Spring MVC的全面指南
|
23天前
|
敏捷开发 监控 前端开发
Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构
Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构
55 0