springmvc json转java Date的JsonSyntaxException最简解决方案
来源:互联网 发布:为什么app连不上网络 编辑:程序博客网 时间:2024/06/03 06:35
问题描述
因为公司用的Linux服务器,在把spring+springmvc+hibernate项目部署上去之后,测试出现了问题:
咋看异常,觉得问题不大,是不是把时间格式修正为:yyyy-MM-dd HH:mm:ss格式就不会异常了,结果不如人意。
解决方案
spring4.2版本指定的是GsonHttpMessageConverter,所以从异常来看是gson的异常,我们今天说的解决方案来自Jackson,所以:
1. spring.xml配置
<!-- 启动注解驱动的Spring MVC功能,注册请求url和注解POJO类方法的映射 --><mvc:annotation-driven /><!-- 配置spring的message转换器 避免IE执行AJAX时,返回JSON让下载 --><bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html; charset=UTF-8</value> <value>text/plain; charset=UTF-8</value> <value>application/json;charset=UTF-8</value> </list> </property> </bean><!-- 指定springmessage转换器为Jackson --><bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <!-- json转换器 --> <ref bean="mappingJacksonHttpMessageConverter" /> </list> </property></bean>
习惯用注解的朋友这句应该是有了的:
<!-- 启动注解驱动的Spring MVC功能,注册请求url和注解POJO类方法的映射 --><mvc:annotation-driven />
那么就加上对Jackson转换器的指定,就是这句话下面的两个bean配置。
2、Entity某个时间类型字段的配置
@Temporal(TemporalType.TIMESTAMP) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @Column(name = "trading_endtime", length = 19) public Date getTradingEndtime() { return this.tradingEndtime; }
我在原来基础添加了一个注解:
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
这个注解来源Jackson:
com.fasterxml.jackson.annotation.JsonFormat
@JacksonAnnotation
@Target(value={ANNOTATION_TYPE, FIELD, METHOD, PARAMETER, TYPE})
@Retention(value=RUNTIME)
至此,异常比较优雅的解决。
阅读全文
0 0
- springmvc json转java Date的JsonSyntaxException最简解决方案
- JSON转Date的序列化问题之解决方案(Java)
- tree date转json解决方案
- SpringMVC @RequestBody Date类型的Json转换
- extjs json date 格式的完美解决方案
- 错误 com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: closed 解决方案
- SpringMVC返回的json数据Date(时间)格式化的问题
- springmvc 返回json格式中date的处理
- java date最常用的时间格式化
- 使用Gson反序列化Json数据失败,报错JsonSyntaxException: java.lang.IllegalStateException
- springmvc 时间格式的String转Date
- SpringMVC+MyBatis - 12 spring mvc4返回的json日期为Long的解决方案(转)
- SpringMVC @ResponseBody 返回json date 转换
- SpringMVC @ResponseBody 返回json date 转换
- springmvc响应json数据的时候报错406解决方案
- springmvc ajax 获取json 报错 406 的解决方案
- python默认json库处理mysql中datetime,date类型不能序列化json的解决方案
- SpringMvc下生成标准Json数据的最简单方法
- Matlab mean() & mean2() & std() 函数的使用
- javadayblog
- linu上传下载命令
- 笔记4-智能指针
- 【Java作业】2017.11.25 / 11.26
- springmvc json转java Date的JsonSyntaxException最简解决方案
- Pycharm WarmNeon主题看不到代码折叠按键(Code Folding)
- C++ 新解
- java 针对图像进行缩放(有损的)
- 【学以致用】android功能实现2---UIautomator 2.0(1)
- 第二次实验
- java并发编程实战-First part
- 软件地址
- EventBus