Strut2 有比较完善的使用OGNL的jsp标签自动转化为对应的后台对象的功能。

这里java.util.Date的自动转化有一些需要注意的地方(局部转换):

1.必须要在struts的xml文件中,在对应action里加入一个name为“input”的result项。

不然使用的时候,strut2框架会报错,如下:

  

提示缺少一个名为 input 的result结果。

2. 如果需要使用自定义转化Date的话,对应的properties文件中的对应关系,最后一定不能有空格!还有不能习惯性的加“;”,不然会提示找不到类。

3. Date自动转化的格式的注意事项。

  struts2框架可以实现对字符串对Date格式的自动转换,但对于用户在浏览器输入的格式还是有要求的。具体来讲,Struts2对Date格式转换是有要求的:

只能识别短(Short)格式和用户操作系统Local默认时间类型(中国标准,美国标准)。

以上的解释怎么解读呢?

所谓短格式,就是如下图所示,图例展示的都是系统Local地为中华人民共和国的短日期格式。也就是说,如果用户的系统Local是中国,那么下午的短周期格式Struts2都能够正常转化。

下图是Local位美国的短日期格式。

特别注意,yyyy-MM-dd或者yyyy/MM/dd这种格式在中国格式非常流行,但是在很多英语地区就不行,

比如:

前面是铺垫,接下来说重点。由于Edge、IE和Windows是微软是一家,所以使用微软家的浏览器要注意浏览器的默认语言是哪家,在哪里设置呢?

IE11为例:

点击“设置首选语言项”

设置你想要的语言为首选语言。如果你设置了English(United States)首选语言,那么你在IE,Edge浏览器输入yyyy-MM-dd或者yyyy/MM/dd,转化就会报错。

值得强调的事情是Chrome有自己的语言体系,不受这个影响。Chrome的语言设置在这里:

所以Struts2转化时间是一件很蛋疼的事情。如果想让自己的系统工作可控一些,建议使用全局自定义转换。怎么转?网上有很多例子,我就不写了。

Struts2 OGNL 自动转换Date类型的一些注意事项的更多相关文章

  1. springboot自动装备date类型报错问题

    错误消息: Field error in object 'user' on field 'birthday': rejected value [2001-02-14]; codes [typeMism ...

  2. springMVC json自动将date类型转换为long

    今天早上遇到了一个奇怪得问题,直接给后台发送请求返回得页面信息中显示时间是正常得,如:2016-03-17 15:42:11.0,但是通过AJAX获取得信息中显示得时间竟然是时间戳. 我首先检查后台传 ...

  3. Java String和Date的转换 Date类型操作

    String—>Date String dateString = "2012-12-06 "; try { SimpleDateFormat sdf = new Simple ...

  4. springMVC注解@initbinder日期类型的属性自动转换

    在实际操作中经常会碰到表单中的日期 字符串和Javabean中的日期类型的属性自动转换, 而springMVC默认不支持这个格式的转换,所以必须要手动配置, 自定义数据类型的绑定才能实现这个功能. 一 ...

  5. @RequestBody配合@JsonFormat注解实现字符串自动转换成Date

    2018年08月28日 16:41:15 混合动力火锅 阅读数:440   在controller中使用@RequestBody可以自动将字符串转换成int或者将int转换成字符串,但是Date类型则 ...

  6. 3_PHP表达式_5_数据类型转换_类型自动转换

    以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP类型转换分为类型自动转换和类型强制转换. 1.布尔型数据参与算数运算时,TRUE被转换为整数1,FALSE被 ...

  7. C语言:数据类型转换 自动转换 强制转换

    数据类型转换就是将数据(变量.数值.表达式的结果等)从一种类型转换为另一种类型. 自动类型转换 自动类型转换就是编译器默默地.隐式地.偷偷地进行的数据类型转换,这种转换不需要程序员干预,会自动发生.1 ...

  8. struts2(二) 表单参数自动封装和参数类型自动转换

    前篇文章对struts2的一个入门,重点是对struts2的架构图有一个大概的了解即可,之后的几篇文章,就是细化struts2,将struts2中的各种功能进行梳理,其实学完之后,对struts2的使 ...

  9. struts2(三)之表单参数自动封装与参数类型自动转换

    前言 对struts2的使用不外乎这几点,参数自动封装,拦截器的使用,数据校验,ognl表达(值栈和actionContext的讲解),struts2的标签,struts2的国际化, struts2的 ...

随机推荐

  1. BZOJ 4723: [POI2017]Flappy Bird

    Description 从一个点到一条直线,每次纵坐标只能增加或减少1,有些位置有障碍,求最少增加步数. Sol 贪心. 或许是贪心吧...反正在可到达的范围内,纵坐标尽量小... 做的时候维护一下两 ...

  2. 安装Yeoman,遇到的问题

    在安装Yeoman遇到了一些报错,具体的步骤就不多说了,直接上码,具体的两处报错的地方. 第一个,创建webapp,直接报权限的错误,这时才留意到在它之前还有一个错误. [root@iZ289zd8c ...

  3. 关于awk的逗号问题

    对于awk逗号的问题,我昨天看的一本书有提过: <Linux就是这个范儿>挺好的书,大家可以看看~~~~ 测试过,总结如下(不知道总结有没有错,欢迎大家吐槽,欢迎大家吐槽,吐槽,吐槽... ...

  4. iOS/Android 浏览器(h5)及微信中唤起本地APP

    在移动互联网,链接是比较重要的传播媒质,但很多时候我们又希望用户能够回到APP中,这就要求APP可以通过浏览器或在微信中被方便地唤起. 这是一个既直观又很好的用户体验,但在实现过程中会遇到各种问题: ...

  5. .NET 获取客户端的操作系统版本、浏览器版本和IP地址

    我们在使用.NET做网站的时候,很多情况下需要需要知道客户端的操作系统版本和浏览器版本,怎样获取客户端的操作系统和浏览器版本呢?我们可以通过分析UserAgent来获取. .NET 获取客户端的操作系 ...

  6. js根据不同浏览器(分辨率)调用不同css

    根据不同浏览器: <script type="text/javascript"> var version = navigator.userAgent; if (vers ...

  7. 单位圆盘的全纯自同构群Aut B(0,1)

    利用Schwarz引理可以求出单位圆盘$B(0,1)$的全纯自同构群${\rm Aut}B(0,1)$. 任取$a\in B(0,1)$,记$$\varphi_{a}(z)=\frac{a-z}{1- ...

  8. Something about pip in Python

    学习python爬虫框架scrapy的时候,用到pip管理工具来安装scrapy.最直观的感受,pip有点类似于Ubuntu下的apt-get工具,几行代码,自动下载.安装相关的东西.网上查了一些背景 ...

  9. C++中常见的两种二义性问题及其解决方式

    --------------------------------一.“倒三角”二义性问题------------------------------- 问题描述:卤煮之所以称之为“倒三角问题”,是因为 ...

  10. C语言SOCKET编程指南

    1.介绍 Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措? ...