java使用fastjson的一些问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_17522211/article/details/84618509

在使用fastjson进行转换时,发现有一些问题,现整理如下:
maven:

<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>1.2.31</version>
</dependency>

java:

import com.alibaba.fastjson.JSON;
public class JsonUtil {
	public static String obj2Json(Object object){
		return JSON.toJSONString(object);
	}
	public static Object json2Entity(String strJson,Class beanClass){
		return JSON.parseObject(strJson, beanClass);
	}
}

问题1:

private String AGE; 转换后为 {"aGE":""}

解决方案:

1> 
    项目初始化或者执行转换前先执行:
    	TypeUtils.compatibleWithJavaBean =true;
  2> 
    import com.alibaba.fastjson.annotation.JSONField;
    getter方法添加:
    @JSONField(name="RESP_CODE")
    public String getRESP_CODE() {
	return RESP_CODE;
    }

问题2:

map里面如存Date类型,转换后为一串数字

解决方法:

转换时: JSON.toJSONStringWithDateFormat(object, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteDateUseDateFormat);
ps: 此种无法对yyyy-MM-dd和包含时分秒的同时做处理.

猜你喜欢

转载自blog.csdn.net/qq_17522211/article/details/84618509
今日推荐