package com.alibaba.json.bvt; import java.awt.Point; import org.junit.Assert; import junit.framework.TestCase; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.JSONSerializer; import com.alibaba.fastjson.serializer.AwtCodec; import com.alibaba.fastjson.serializer.SerializerFeature; public class PointTest2 extends TestCase { public void test_point() throws Exception { JSONSerializer serializer = new JSONSerializer(); Assert.assertEquals(AwtCodec.class, serializer.getObjectWriter(Point.class).getClass()); Point point = new Point(3, 4); String text = JSON.toJSONString(point, SerializerFeature.WriteClassName); System.out.println(text); Object obj = JSON.parse(text); Point point2 = (Point) obj; Assert.assertEquals(point, point2); Point point3 = (Point) JSON.parseObject(text, Point.class); Assert.assertEquals(point, point3); } public void test_point2() throws Exception { JSON.parseObject("{}", Point.class); JSON.parseArray("[null,null]", Point.class); Assert.assertNull(JSON.parseObject("null", Point.class)); JSON.parseObject("{\"@type\":\"java.awt.Point\"}", Point.class); JSON.parseObject("{\"value\":null}", VO.class); } public static class VO { private Point value; public Point getValue() { return value; } public void setValue(Point value) { this.value = value; } } }