bug fixed for LinkedList serialize performance. #1375

This commit is contained in:
wenshao
2017-08-06 12:30:57 +08:00
parent 4696a9a193
commit f4e746a6b3
2 changed files with 25 additions and 10 deletions
@@ -22,16 +22,7 @@ import java.net.URI;
import java.net.URL;
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Collection;
import java.util.Currency;
import java.util.Date;
import java.util.Enumeration;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.TimeZone;
import java.util.UUID;
import java.util.*;
import java.util.regex.Pattern;
import com.alibaba.fastjson.JSON;
@@ -121,6 +112,8 @@ public class SerializeConfig {
Class<?> superClass;
if (Map.class.isAssignableFrom(clazz)) {
serializers.put(clazz, new MapSerializer());
} else if (AbstractSequentialList.class.isAssignableFrom(clazz)) {
serializers.put(clazz, CollectionCodec.instance);
} else if (List.class.isAssignableFrom(clazz)) {
serializers.put(clazz, new ListSerializer());
} else if (Collection.class.isAssignableFrom(clazz)) {
@@ -0,0 +1,22 @@
package com.alibaba.json.bvt.issue_1300;
import com.alibaba.fastjson.serializer.CollectionCodec;
import com.alibaba.fastjson.serializer.ListSerializer;
import com.alibaba.fastjson.serializer.SerializeConfig;
import junit.framework.TestCase;
import java.util.ArrayList;
import java.util.LinkedList;
/**
* Created by wenshao on 06/08/2017.
*/
public class Issue1375 extends TestCase {
public void test_issue() throws Exception {
assertSame(CollectionCodec.instance
, SerializeConfig.getGlobalInstance()
.get(LinkedList.class));
assertTrue(SerializeConfig.getGlobalInstance()
.get(ArrayList.class) instanceof ListSerializer);
}
}