SpringMVC3.2 解决PO返回前台转成JSON时数据Long精度丢失问题

SpringMVC3.2  解决PO返回前台转成JSON时数据Long精度丢失问题

方案

1、自定义一个杰克逊的json转换类

public class LongToStringAdapter extends ObjectMapper {

    private static final long serialVersionUID = 4402127997078513582L;  

    public LongToStringAdapter() {
        super();
        SimpleModule simpleModule = new SimpleModule();
        simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
        simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);
        this.registerModule(simpleModule);
    }
}

2、配置到springmvc文件中即可

  <mvc:annotation-driven  conversion-service="conversionService">
        <mvc:message-converters>
           <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
               <property name="objectMapper">
                    <!-- <bean class="com.fasterxml.jackson.databind.ObjectMapper">   -->
                    <bean class="mypackage.LongToStringAdapter">
                        <property name="dateFormat">
                            <bean class="java.text.SimpleDateFormat">
                                <constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />
                            </bean>
                        </property>
                    </bean>
               </property>
           </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>

时间: 2024-10-11 05:28:40

SpringMVC3.2 解决PO返回前台转成JSON时数据Long精度丢失问题的相关文章

java将XML文档转换成json格式数据

功能 将xml文档转换成json格式数据 说明 依赖包: 1. jdom-2.0.2.jar : xml解析工具包; 2. fastjson-1.1.36.jar : 阿里巴巴研发的高性能json工具包 程序源码 package com.xxx.open.pay.util; import com.alibaba.fastjson.JSONObject; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdo

将java.util.Date类型转换成json时,使用JsonValueProcessor将date转换成希望的类型

将java.util.Date类型转换成json时,使用JsonValueProcessor将date转换成希望的类型 问题描述: java里面时间类型转换成json数据就成这样了:"createTime":{"date":30,"day":3,"hours":15,"minutes":14,"month":3,"nanos":0,"seconds"

GSON将Java对象转成JSON时,如何排除某些字段

GSON 是Google发布的 JSON 序列化/反序列化工具,非常容易使用.本文简要讨论在使用GSON将Java对象转成JSON时,如何排除某些字段. 最简单的用法 假设有下面这个类: 1 class MyObj { 2 3 public int x; 4 public int y; 5 6 public MyObj(int x, int y) { 7 this.x = x; 8 this.y = y; 9 } 10 } 最简单的GSON用法如下所示: @Test public void gs

MVC 返回对象换成json

错误界面: 这个就是返回对象没有转换成json 就是要再返回的头部添加application/json 代码: using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Net.Http.Formatting; using System.Net.Http.Headers; using System.Web; namespace WorkOrderMa

php json_encode 将数组转换成json格式数据出错

当用php 的 json_encode 函数将数组转换成json格式的时候,如果该数组是一个索引数组而且数组的索引的顺序不是按照0,1,2...排序的话,在转换成json数据的时候就不能得到你所想要的json数组,而是一个json对象 这个问题是在开发app接口的时候发现的,因为php和app之前是通过json数据格式进行数据通讯的,而app那边对json的数组和对象类型很敏感,本来是数组格式的,可是突然变对象了,导致出错,后来就发现,php这边的索引数组的键名没有按照顺序排序的,导致转成jso

解决报表网页版转成excel时,首位0被清除的问题

FND_FILE.PUT_LINE(FND_FILE.OUTPUT, '<td style="mso-number-format:' || '''' || '\@' || '''' || ' ">' || V_CUST_NUMBER || '</td>')

含有Date类型的对象或集合转换成json时的问题

当我们把含有Date类型的对象或者集合直接转换为json,传回前台的时候不会报错,但是前台显示的时候是两个Object,而不会显示正常的日期. 当我们进debug调试的时候不会发现有错误,但是在解析JSON的时候就会发现: 在转换为JSON的过程中把date对象分开转化,即:年.月.日.时.分.秒,每个都当成一个对象给转化了. 这时候我们就需要做一些转换了 下面给大家提供一些大神给出常规的解决方案: 一:流星焱雨给出的解决方案 二:jadethao给出的解决方案 而当我们基本只需要临时显示日期的

解决使用JavaScriptConvert转换对象为Json时,中文和&amp;符号被转码的问题

描述:比如 对象为var data=new {url="http://www.baidu.com?a=b&c=d"} 使用JavaScriptConvert序列化为JSON之后,变成{url:"http://www.baidu.com?a=b\u0026c=d"} &符号被转码为\u0026 怎么把它转回来呢? 1.使用正则表达式的 System.Text.RegularExpressions.Regex.Unescape(json) 2.使用第三方

将html table中的数据封装成json格式数据

var tab=document.getElementById("table1");     var rows=tab.rows; //alert(rows.length); var txt = "["; for(var i=2;i<rows.length;i++) { var r = "["; for(var j=0;j<rows[i].cells.length;j++) { // alert("第"+(i+1)