Velocity時間格式處理—後臺java類處理(方法一)

寫一個類:JsonDateChairmanValueProcessor 繼承 JsonValueProcessor,來對時間進行特殊格式的處理

例如:

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;


public  class JsonDateChairmanValueProcessor implements JsonValueProcessor {
	private String format ="yyyy / MM / dd HH:mm";
	
	public JsonDateChairmanValueProcessor() {
		super();
	}
	
	public JsonDateChairmanValueProcessor(String format) {
		super();
		this.format = format;
	}

	
	public Object processArrayValue(Object paramObject,
			JsonConfig paramJsonConfig) {
		return process(paramObject);
	}

	
	public Object processObjectValue(String paramString, Object paramObject,
			JsonConfig paramJsonConfig) {
		return process(paramObject);
	}
	
	
	private Object process(Object value){
        if(value instanceof Date){  
            SimpleDateFormat sdf = new SimpleDateFormat(format,Locale.CHINA);  
            return sdf.format(value);
        }  
        return value == null ? "" : value.toString();  
    }



}
封裝頁面的數據時候,寫法如下:

JSONObject data = new JSONObject();
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.registerJsonValueProcessor(Date.class,new JsonDateChairmanValueProcessor());
data.put("faqList", JSONArray.fromObject(faqList, jsonConfig));
data.put("userType",userType);

注:

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章