SpringMvc对时间类型的转换

问题:接触过web的都知道,前端的form表单传给后台的数据类型都是字符串,如果空着则为空字符串'',而不是null,那么问    题来了,当后台的字段类型是java.lang.Date类型的数据的时候,我们应该如何对他进行转换类型,SpringMvc能对简单 类型的数据进行自动类型转换,但显然这并不包括java.lang.Date类型。还有一个问题便是:如何把java.lang.Date类型   的数据在前端页面根据自己想要的格式进行格式化显示。

解决方法:

    1.类型转换:

        

        如上图所示,我这里用的是java.lang.Date类型的数据,在想要转换类型的字段加上注解

        @DateTimeFormat(pattern="想转换成的格式"),还需要注意的是,想要这个注解生效的话,还需要引入一个           

         joda-time-    2.1.jar  的jar包 (可以上百度搜,在网上下载这个jar包)。这时只要前端传回的数据格式和你定义的格式              一 样的话,那么会自动进行类型转换。

        2.前端格式化显示事件类型的数据

       这里给出两种显示方式。注意需要在前端页面引入<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"  %>

            一种是只需要显示数据,而不需要对数据进行修改的显示方式:

            <fmt:formatDate value="${b.pressDate}" type="date" pattern="yyyy/MM/dd"/>

扫描二维码关注公众号,回复: 1942874 查看本文章

            其中${b.pressDate}是EL表达式,具体的数据根据自己的项目进行修改。

            pattern则是对数据进行的格式进行定义,根据需要进行修改。

            type则不需要进行修改,同这里一样即可。

            另一种是把数据显示在一个input标签中,可以对数据进行修改的:

            <input type="text" name="lowPressDate" size="20" placeholder="区间查询(注意格式)" value="<fmt:formatDate value='${query.lowPressDate }' type='date' pattern='yyyy/MM/dd'/>"/>

            这里需要提一下就是name属性,这个是用来传输数据,具体可以百度SpringMvc form表单传输数据。

            这篇文章均是本人自己码出来的,如有雷同,纯属巧合。

猜你喜欢

转载自blog.csdn.net/m0_37954722/article/details/80951783