android 技术知识

android中对Gson实现简单的封装

2017-09-26  本文已影响8人  追梦小乐
public class GsonUtil
{
        private Gson mGson;

        private static GsonUtil INSTANCE;

        private GsonUtil( )
        {
            mGson = new Gson( );
        }

        public static GsonUtil getInstance( )
        {
            if ( INSTANCE == null )
            {
                INSTANCE = new GsonUtil( );
            }
            return INSTANCE;
        }

        public Gson getGson( )
        {

            return mGson;
        }

        /**
         * @param <T>
         * @Title: getServerBean
         * @Description: 将一个json字符串转换成对象
         * @param jsonStr
         *            json字符串
         * @param cls
         *            需要转换成的类
         * @return
         */
        public < T > T getBeanFromJsonString( String jsonStr , Class< T > cls )
        {
            T obj = null;
            try
            {
                obj = mGson.fromJson( jsonStr , cls );
            }
            catch ( Exception e )
            {
                e.printStackTrace( );
            }
            return obj;
        }

        /**
         * @Title: getStringFromJsonObject
         * @Description: 将一个object序列化为json字符串
         * @param obj
         * @return
         */
        public String getJsonStringFromObject( Object obj )
        {
            String jsonStr = "";
            try
            {
                jsonStr = mGson.toJson( obj );
            }
            catch ( Exception e )
            {
                e.printStackTrace( );
            }
            return jsonStr;
        }

    /**
     * @param <T>
     * @Title: getServerBean
     * @Description: 将一个json字符串转换成对象
     * @param jsonStr
     *            json字符串
     * @param cls
     *            需要转换成的类
     * @return
     */
    public < T > T getResultBeanFromJsonString( String jsonStr , Class< T > cls )
    {
        T obj = null;
        try
        {
            obj = mGson.fromJson( jsonStr , cls );
        }
        catch ( Exception e )
        {
            e.printStackTrace( );
        }
        return obj;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读