关于ajax接受java返回值日期显示Object的问题

  • A+
所属分类:java 编程

前言

小编最近在做项目的时候遇到一个问题,就是前后台做ajax异步查询的时候,返回给ajax的时间在页面显示Object,当时很头疼,在网上查了半天,最后终于解决了。在这大家也可以参考一下。方便以后遇到问题好解决。

首先写一个工具类,用到直接调用即可。

import java.text.SimpleDateFormat;
import java.util.Date;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;

/**
 * 扩展JsonValueProcessor接口获得相应转换的日期格式
 * 
 * @author Hellohao
 *
 */
public class JsonValueProcessorImpl implements JsonValueProcessor {
    private String format = "yyyy-MM-dd";

    public String getFormat() {
        return format;
    }

    public void setFormat(String format) {
        this.format = format;
    }

    public JsonValueProcessorImpl() {
        super();
    }

    public JsonValueProcessorImpl(String format) {
        super();
        this.format = format;
    }

    public Object processArrayValue(Object value, JsonConfig jsonConfig) {
        String[] obj = {};
        if (value instanceof Date[]) {
            SimpleDateFormat sf = new SimpleDateFormat(format);
            Date[] dates = (Date[]) value;
            obj = new String[dates.length];
            for (int i = 0; i < dates.length; i++) {
                obj[i] = sf.format(dates[i]);
            }
        }
        return obj;
    }

    public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
        String val = "";

        if (value instanceof java.util.Date) {
            String str = new SimpleDateFormat(format).format((Date) value);
            return str;
        }
        if (value != null) {
            val = value.toString();
        }
        return val;
    }
}

然后大家直接调用使用就可以。

//json 与 bean 之间的date转换,解决json接受日期在页面上显示object
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.registerJsonValueProcessor(java.util.Date.class,new JsonValueProcessorImpl());
JSONObject JsonObject = JSONObject.fromObject(newWorkPlan, jsonConfig); //使用JSONObject类型变量JsonObject接收json值即可

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: