Springmvc框架-json数据格式传递过程中-将时间戳转化成标准的日期格式[email protected]

在上一个小demo中,我们能够看出,其实返回的日期格式也是不对的,现在返回的是一个时间戳,并不是一个标准的日期格式。

解决办法:

第一种:在要转化的实体类中添加@JSONField注解

第二种:配置fastjson的消息转换器,来处理日期格式的问题

springmvc-servlet.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
 4     xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
 5     xsi:schemaLocation="
 6         http://www.springframework.org/schema/beans
 7         http://www.springframework.org/schema/beans/spring-beans.xsd
 8         http://www.springframework.org/schema/context
 9         http://www.springframework.org/schema/context/spring-context.xsd
10         http://www.springframework.org/schema/mvc
11         http://www.springframework.org/schema/mvc/spring-mvc.xsd">
12
13     <context:component-scan base-package="cn.smbms.controller" />
14     <mvc:annotation-driven>
15         <!-- 添加消息转换器 解决json数据传递过程中的乱码问题 -->
16         <mvc:message-converters>
17             <bean class="org.springframework.http.converter.StringHttpMessageConverter">
18                 <!-- 设置相应的属性 -->
19                 <property name="supportedMediaTypes">
20                     <list>
21                         <value>application/json;charset=UTF-8</value>
22                     </list>
23                 </property>
24             </bean>
25             <!-- 日期格式的转化 -->
26             <bean
27                 class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
28                 <property name="supportedMediaTypes">
29                     <list>
30                         <value>text/html;charset=UTF-8</value>
31                         <value>application/json</value>
32                     </list>
33                 </property>
34                 <property name="features">
35                     <list>
36                         <!--WriteDateUseDateFormat这是fastjson默认的日期转换格式 -->
37                         <value>WriteDateUseDateFormat</value>
38                     </list>
39                 </property>
40             </bean>
41         </mvc:message-converters>
42     </mvc:annotation-driven>
43
44     <mvc:resources mapping="/statics/**" location="/statics/" />
45     <!-- 完成视图的对应 -->
46     <!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀 -->
47     <bean
48         class="org.springframework.web.servlet.view.InternalResourceViewResolver">
49         <property name="prefix" value="/WEB-INF/jsp/" />
50         <property name="suffix" value=".jsp" />
51     </bean>
52
53     <!-- 全局异常处理 -->
54     <bean
55         class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
56         <property name="exceptionMappings">
57             <props>
58                 <prop key="java.lang.RuntimeException">error</prop>
59             </props>
60         </property>
61     </bean>
62
63     <!--配置MultipartResolver,用于文件上传 -->
64     <bean id="multipartResolver"
65         class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
66         <property name="maxUploadSize" value="5000000"></property>
67         <property name="defaultEncoding" value="UTF-8"></property>
68     </bean>
69
70 </beans>

修改UserController.java 这里就不再需要将返回的实体对象转换成json了

运行结果:

观察:现在返回的时间给精确到秒了

原因:

解决办法:

使用@JSONField控制某个要显示的字段就可以了

原文地址:https://www.cnblogs.com/dongyaotou/p/12261874.html

时间: 2024-10-24 21:56:02

Springmvc框架-json数据格式传递过程中-将时间戳转化成标准的日期格式[email protected]的相关文章

Springmvc框架-json数据传递处理,解决方案2

上一个案例中,我们使用的是在controller中进行配置,来转换json数据在传递过程中的乱码问题,但是,这样每个用到json数据的controller都需要进行相应的配置,这样显然是不好的,那么我们就会考虑有没有以重统一的配置,答案当然是有的. 修改springmvc-servlet.xml 1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.spri

jquery 前台页面中时间戳转换成正常的日期格式

这个方法网上有好多,不过值得注意的是,你后台传过去的时间戳是不是精确到毫秒的问题 如果精确到毫秒就用下面的这个形式 new Date(parseInt(iteam.time)).toLocaleString().replace(/:\d{1,2}$/,' ') 如果没有精确到毫秒就用这种形式 new Date(parseInt(iteam.time)*1000).toLocaleString().replace(/:\d{1,2}$/,' ') 输出的结果是

springMVC框架下JQuery传递并解析Json数据

json作为一种轻量级的数据交换格式,在前后台数据交换中占领着很重要的地位.Json的语法很简单,採用的是键值对表示形式.JSON 能够将 JavaScript 对象中表示的一组数据转换为字符串,然后就能够在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给server端程序,也能够从server端程序传递json格式的字符串给前端并由前端解释.这个字符串是符合json语法的,而json语法又是javascript语法的子集,所以javascript很easy解释

规避字符串在传递过程中造成的编码问题

今天碰到一个让人脸绿的问题. 原来的做法是,如果页面出错,则往Cookie里塞错误信息,然后迁移到错误页面,再把错误信息从Cookie里取出来,显示到页面上. 这个做法原先都好好的,但是代码加密后,就出毛病了. 往Cookie里塞的时候还是好好的“无权限!”. 但是在错误页面取出来的时候就变成了乱码. 纠结了好久,终于想出一个解决方法,如下: 将错误信息搜集整理成一个类,然会出错的时候,Cookie里塞的不是字符串,而是错误代码. 迁移到错误页面后,根据错误代码前往错误信息类,取到错误信息显示到

SQLServer---查询过程中的数据类型转化

SQLServer---查询过程中的数据类型转化 前两天在维护某市人才服务中心的人事档案管理系统的时候,发现了这个一个问题新的档案编号规则是日期+已有档案最大编号+1(六位,不足六位在中间补零)(((CONVERT([varchar](9),[createTime],(112))+'')+right((100000000000.)+[num],(6))))例如:20150511007841.说实话真的不清楚当时为什么会用最大编号,而不是用总记录数+1(不存在删除数据),接下来说说遇到的问题,以及

微信消息中的CreateTime转换成标准格式的时间

/** * 将微信消息中的CreateTime转换成标准格式的时间(yyyy-MM-dd HH:mm:ss) * * @param createTime 消息创建时间 * @return */ public static String formatTime(String createTime) { // 将微信传入的CreateTime转换成long类型,再乘以1000 long msgCreateTime = Long.parseLong(createTime) * 1000L; DateFo

9-Ubuntu中mysql出现ERROR1698(28000):Access denied for user [email&#160;protected]错误解决方法

卸载原先的MySQL,重新安装过程中没有提示设置密码, 当键入命令:mysql -uroot -p; 不知密码是什么,输入主机的密码以及不输入密码,回车后都出现标题错误. 寻找多篇相关博文,验证如下博文真实有效!! https://www.cnblogs.com/cpl9412290130/p/9583868.html 原文地址:https://www.cnblogs.com/summer1019/p/11018493.html

springMVC和json结合传递数据

1. 新建web project 2. 增加jar 3. 改写web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

ajax数据传递过程中中文乱码问题

1.GET请求:将Tomcat服务器中的server.xml文件修改如下所示: <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding=”UTF-8”/> 2.POST请求:在js中使用ajax对象发送请求的时候设置如下的请求头信息: xmlHttpRequest.setRe