zoukankan      html  css  js  c++  java
  • 使用Gson将Object转String出现u003d 的原因

    在使用Gson将Object转json字符串,或者将实体类例如:User转为json的过程中,最终的结果会在值中出现u003d

    出现这个的原因是 Gson gson = new Gson() 造成的

    这个时候需要使用

    Gson gson = new GsonBuilder().disableHtmlEscaping().create();

    实例化一个gson

    gson.toJson(map)

    这个时候在进行转换就不会出现u003d

    附GsonUtils工具类

    package cn.changemax.utils;
     
    import com.google.gson.*;
    import com.google.gson.reflect.TypeToken;
     
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Map;
     
    /**
     * json转换工具
     */
    public class GsonUtils {
     
        private static final Gson gson = new GsonBuilder().disableHtmlEscaping().create();
     
        public static String toJsonString(Object object) {
            return object == null ? null : gson.toJson(object);
        }
     
        /**
         * 转成json
         */
        public static String beanToString(Object object) {
            String gsonString = null;
            if (gson != null) {
                gsonString = gson.toJson(object);
            }
            return gsonString;
        }
     
        /**
         * 转成bean
         */
        public static <T> T stringToBean(String gsonString, Class<T> cls) {
            T t = null;
            if (gson != null) {
                t = gson.fromJson(gsonString, cls);
            }
            return t;
        }
     
        /**
         * 转成list
         */
        public static <T> List<T> stringToList(String gsonString, Class<T> cls) {
            List<T> list = new ArrayList<>();
            if (gson != null) {
                JsonArray array = new JsonParser().parse(gsonString).getAsJsonArray();
                for (final JsonElement elem : array) {
                    list.add(gson.fromJson(elem, cls));
                }
            }
            return list;
        }
     
        /**
         * 转成list, 有可能造成类型擦除
         */
        public static <T> ArrayList<T> stringToList(String gsonString) {
            ArrayList<T> list = null;
            if (gson != null) {
                list = gson.fromJson(gsonString, new TypeToken<ArrayList<T>>() {
                }.getType());
            }
            return list;
        }
     
        /**
         * 转成map的
         */
        public static <T> Map<String, T> stringToMaps(String gsonString, Class<T> cls) {
            Map<String, T> map = null;
            if (gson != null) {
                map = gson.fromJson(gsonString, new TypeToken<Map<String, T>>() {
                }.getType());
            }
            return map;
        }
    }
    

    本文转自:https://blog.csdn.net/qq_40223688/article/details/102409026

  • 相关阅读:
    window.open和window.opener
    dict对象与QueryDict
    BeautifulSoup的一些方法
    ORM分组与聚合
    python-orm
    开发工具IDEA环境安装配置
    Greenplum介绍-table
    对package.json的理解和学习
    javaScript 的 map() reduce() foreach() filter()
    JSON的序列化和反序列化eval()和parse()方法以及stringfy()方法
  • 原文地址:https://www.cnblogs.com/sishuiliuyun/p/15391984.html
Copyright © 2011-2022 走看看