天下之事,必先处之难,而后易之。

ALiBABa fastjson去除JSON对象不需要的属性字段



引入包:

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

TEST测试用例:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class JsonTest {

        @Test
	public void testJson()
	{
	/*	JSONObject json=new JSONObject();
		json.put("dd", "ss");
		json.put("mm", "ss");
		System.out.println("====1"+json.toJSONString()); 
		json.remove("mm");
		System.out.println("====1"+json.toJSONString()); */
		
		DataObject obj=new DataObject();
		System.out.println(obj.toString());
		JSONObject jsonObject=JSON.parseObject(obj.toString());
		System.out.println("====all attributes:"+jsonObject.toJSONString()); 
		jsonObject.remove("num1");
		System.out.println("====remove num1"+jsonObject.toJSONString()); 
		jsonObject.remove("num3");
		System.out.println("====remove num3"+jsonObject.toJSONString()); 
	}
	
	public class DataObject implements Serializable
	{
		public int num1=0;
		public int num2=0;
		public double num3=0.0;
		public double num4=0.0;
		public int getNum1() {
			return num1;
		}
		public void setNum1(int num1) {
			this.num1 = num1;
		}
		public int getNum2() {
			return num2;
		}
		public void setNum2(int num2) {
			this.num2 = num2;
		}
		public double getNum3() {
			return num3;
		}
		public void setNum3(double num3) {
			this.num3 = num3;
		}
		public double getNum4() {
			return num4;
		}
		public void setNum4(double num4) {
			this.num4 = num4;
		}
		@Override
		public String toString() {
			String s="{";
			s+="\"num1"+"\":"+"\""+num1+"\",";
			s+="\"num2"+"\":"+"\""+num2+"\",";
			s+="\"num3"+"\":"+"\""+num3+"\",";
			s+="\"num4"+"\":"+"\""+num4+"\"";
			s+="}";
			return s;
		}
		
		
	}
}

就是一个JSONObject 的remove方法就搞定了。以下是测试结果:

{"num1":"0","num2":"0","num3":"0.0","num4":"0.0"}
====all attributes:{"num1":"0","num2":"0","num3":"0.0","num4":"0.0"}
====remove num1{"num2":"0","num3":"0.0","num4":"0.0"}
====remove num3{"num2":"0","num4":"0.0"}


posted @ 2024-10-16 08:55  boonya  阅读(155)  评论(0)    收藏  举报  来源
我有佳人隔窗而居,今有伊人明月之畔。
轻歌柔情冰壶之浣,涓涓清流梦入云端。
美人如娇温雅悠婉,目遇赏阅适而自欣。
百草层叠疏而有致,此情此思怀彼佳人。
念所思之唯心叩之,踽踽彳亍寤寐思之。
行云如风逝而复归,佳人一去莫知可回?
深闺冷瘦独自徘徊,处处明灯影还如只。
推窗见月疑是归人,阑珊灯火托手思忖。
庐居闲客而好品茗,斟茶徐徐漫漫生烟。

我有佳人在水之畔,瓮载渔舟浣纱归还。
明月相照月色还低,浅近芦苇深深如钿。
庐山秋月如美人衣,画堂春阁香气靡靡。
秋意幽笃残粉摇曳,轻轻如诉画中蝴蝶。
泾水潺潺取尔浇园,暮色黄昏如沐佳人。
青丝撩弄长裙翩翩,彩蝶飞舞执子手腕。
香带丝缕缓缓在肩,柔美体肤寸寸爱怜。
如水之殇美玉成欢,我有佳人清新如兰。
伊人在水我在一边,远远相望不可亵玩。