springMVC-数据的格式化
1.配置annotation-driven
<mvc:annotation-driven ></mvc:annotation-driven>
2.在实体类上加上@NumberForma这样的注解
@NumberFormat(pattern="#,###,###.#")
private Float price;
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date productionDate;
这样就可以了
数据格式化
* 对属性对象的输入输出进行格式化,从其本质上讲依然属于"类型转换"的范畴
* Spring在格式化模块中定义了一个实现ConversionService接口的
FormattingConversionService实现类,该实现类扩展了GenericConversionService
,因此它既具有类型转换的功能,有具有格式话的功能
* FormattingConversionServiceFactoryBean工厂类,后者用于在Spring上下
中构造前者
-FormattingConversionServiceFactoryBean内部已经注册了
NumberFormatAnnotationFormatterFactory:支持对数字类型的
属性使用@NumberFormat注解
-JodaDateTimeFormatterAnnotationFormatterFactory:支持对日期类型的属性使用
@DateTimeFormat注解
装备了FormattingConversionServiceFactoryBean后,就可以在SpringMVC入参
绑定及模型数据输出时使用注解驱动了<mvc:annotation-driven/>
默认创建的ConversionService实例即为
FormattinConversionServiceFactorybean
日期格式化
@DateTimeFormat注解可以对java.util.Date,
java.util.Calender.java.long.Long时间类型进行标注:
-pattern属性:类型为字符串,指定解析/格式化字段数据的模式,
如:"yyyy-MM-dd hh:mm:ss"
-iso属性:类型为DateTimeFormat.ISO.指定解析.格式化字段数据的ISO模式
,包括四种:ISO.NONE(不使用,)--默认.
ISO.DATE(yyyy-MM-dd)
ISO.TIME(hh:mm:ss.SSSZ).ISO.DATE(yyyt-MM-dd hh:mm:ss.SSSZ)
-style 属性:字符串类型,通过演示指定日期时间的格式,由两位字符组成,
第一位镖师日期的额格式化,第二位表式时间的格式,S:短日期/时间格式,
M:中日期/时间格式.L:长日期/时间格式.F完整日期/时间格式.
-忽略日期或者时间格式
之前配置了一个ConversionService,但是现在已经用不了了
<!--配置ConversionService -->
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<set>
<ref bean="procuctConverter"/>
</set>
</property>
</bean>
但是可以换成org.springframework.format.support.FormattingConversionServiceFactoryBean
使用了这个之后既可以用自己的 可以用Spring的提供的格式化
现在考虑一个问题,如果出错了怎么办
使用BindingResult 注意BindingResult必须和他绑定的变量紧挨着
public String saveProduct(@ModelAttribute Product product,
BindingResult bindingResult, Model model) {
if(bindingResult.getErrorCount() > 0)
{
System.out.println("出错了");
for(FieldError error : bindingResult.getFieldErrors())
{
System.out.println(error.getField() +" : "+error.getDefaultMessage());
}
}
}
springMVC-数据的格式化的更多相关文章
- 项目中整合第三方插件与SpringMVC数据格式化关于ip地址
一.Bootstrap 响应式按钮 <div calss="col-sm-2"> <button class="btn btn-default btn- ...
- SpringMVC数据格式化
SpringMVC数据格式化 1. 使用Formatter格式化数据 Converter可以将一种类型转换成另一种类型,是任意Object之间的类型转换. Formatter则只能进行String与任 ...
- SpringMVC数据验证
SpringMVC数据验证——第七章 注解式控制器的数据验证.类型转换及格式化——跟着开涛学SpringMVC 资源来自:http://jinnianshilongnian.iteye.com/blo ...
- 《Java从入门到放弃》入门篇:springMVC数据传递
springMVC中的数据传递方式与JSP和Struts2相比,更加的简单.具体有什么样的区别呢?我们通过下面这张图来对比就知道了. 随手画的,有些错别字,不用太在意..... 接下来,进入正题,sp ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 格式化列
jQuery EasyUI 数据网格 - 格式化列 以下实例格式化在 easyui DataGrid 里的列数据,并使用自定义列的 formatter,如果价格小于 20 就将文本变为红色. 为了格式 ...
- 利用Gson将JSON数据进行格式化(pretty print)
我们可以利用Gson包将String类型的JSON数据进行格式化. Gson gson = new GsonBuilder().setPrettyPrinting().create(); JsonPa ...
- 对请求数据的格式化 方案 Spring Cloud Gateway features:
对请求数据的格式化 例如 {body:{}}--->{data:{}} 执行阶段概念 · OpenResty最佳实践 · 看云 https://www.kancloud.cn/kancloud/ ...
- SpringMVC数据校验并通过国际化显示错误信息
目录 SpringMVC数据校验并通过国际化显示错误信息 SpringMVC数据校验 在页面中显示错误信息 通过国际化显示错误信息 SpringMVC数据校验并通过国际化显示错误信息 SpringMV ...
- SpringMVC——类型转换和格式化、数据校验、客户端显示错误消息
在介绍类型转换和格式化之前,我首先来介绍 <mvc:annotation-driven />. 需要导入的 schema: xmlns:mvc="http://www.sprin ...
- 【Spring学习笔记-MVC-9】SpringMVC数据格式化之日期转换@DateTimeFormat
作者:ssslinppp 1. 摘要 本文主要讲解Spring mvc数据格式化的具体步骤: 并讲解前台日期格式如何转换为java对象: 在之前的文章<[Spring学习笔记-MVC ...
随机推荐
- java多线程系类:基础篇:03Thread中的start()和run()的区别
这个系类的内容全部来源于http://www.cnblogs.com/skywang12345/p/3479024.html.特别在此声明!!! 概要 Thread类包含start()和run()方法 ...
- usb驱动开发23之驱动生命线
关于字符串描述符的地位仅次于设备/配置/接口/端点四大描述符,那四大设备必须得支持,而字符串描述符对设备来说则是可选的,这并不是就说字符串描述符不重要,对咱们来说,提供字符串描述符的设备要比没有提供的 ...
- 您的项目引用了最新实体框架;但是,找不到数据链接所需的与版本兼容的实体框架数据库 EF6使用Mysql的技巧
转载至: http://www.cnblogs.com/Imaigne/p/4153397.html 您的项目引用了最新实体框架:但是,找不到数据链接所需的与版本兼容的实体框架数据库 EF6使用Mys ...
- SHGetFileInfo函数详解
SHGetFileInfo函数: WINSHELLAPI DWORD WINAPI SHGetFileInfo( LPCTSTR pszPath, DWORD dwFileAttributes, SH ...
- C#执行XSL转换
xsl 可方便的将一种格式的xml,转换成另一种格式的xml,参考下面的代码: using System; using System.IO; using System.Text; using Syst ...
- Android -- ActivityLifeCycleCallbacks
ActivityLifeCycleCallbacks Application通过此接口提供了一套回调方法,用于让开发者对Activity的生命周期事件进行集中处理. 为什么用ActivityLifec ...
- 异常和IO
异常 异常是指java程序运行时(非编译)所发生的非正常情况或错误. Java对异常进行了分类,不同类型的异常分别用不同的 Java 类表示,所有异常的根类为 java.lang.Throwable, ...
- web 前端常用组件【02】Select 下拉框
<select id="hello"></select> 关于 select 支持的属性和响应事件,可以参照:http://www.runoob.com ...
- 汤姆大叔的6道javascript编程题题解
看汤姆大叔的博文,其中有篇(猛戳这里)的最后有6道编程题,于是我也试试,大家都可以先试试. 1.找出数字数组中最大的元素(使用Math.max函数) var a = [1, 2, 3, 6, 5, 4 ...
- java并发:同步容器&并发容器
第一节 同步容器.并发容器 1.简述同步容器与并发容器 在Java并发编程中,经常听到同步容器.并发容器之说,那什么是同步容器与并发容器呢?同步容器可以简单地理解为通过synchronized来实现同 ...