فهرست منبع

优化json转换

zhouhao 7 سال پیش
والد
کامیت
868b18e44f
13فایلهای تغییر یافته به همراه234 افزوده شده و 61 حذف شده
  1. 1 0
      hsweb-examples/hsweb-examples-simple/src/main/java/org/hswebframework/web/example/simple/TestController.java
  2. 9 2
      hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/HswebAutoConfiguration.java
  3. 183 0
      hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/convert/FastJsonGenericHttpMessageConverter.java
  4. 22 23
      hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/convert/FastJsonHttpMessageConverter.java
  5. 3 3
      hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/resolver/JsonParamResolver.java
  6. 2 4
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-starter/src/test/java/org/hswebframework/web/starter/authorization/AuthorizationSettingTests.java
  7. 2 7
      hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-starter/src/test/java/org/hswebframework/web/starter/dictionary/DictionaryParserTests.java
  8. 2 5
      hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-starter/src/test/java/org/hswebframework/web/starter/dictionary/DictionaryTests.java
  9. 2 5
      hsweb-system/hsweb-system-oauth2-client/hsweb-system-oauth2-client-starter/src/test/java/org/hswebframework/web/starter/oauth2/client/OAuth2ServerConfigTests.java
  10. 2 4
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/DepartmentTests.java
  11. 2 4
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/OrganizationalTests.java
  12. 2 2
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/PersonTests.java
  13. 2 2
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/PositionTests.java

+ 1 - 0
hsweb-examples/hsweb-examples-simple/src/main/java/org/hswebframework/web/example/simple/TestController.java

@@ -67,6 +67,7 @@ public class TestController implements QueryController<UserEntity, String, Query
 
 
     @PutMapping("/testUpdateBatch")
+    @Authorize(ignore = true)
     public ResponseMessage<List<UserModel>> testUpdate(@RequestBody List<UserModel> model) {
         return ResponseMessage.ok(model);
     }

+ 9 - 2
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/HswebAutoConfiguration.java

@@ -29,6 +29,7 @@ import org.hswebframework.web.commons.entity.Entity;
 import org.hswebframework.web.commons.entity.factory.EntityFactory;
 import org.hswebframework.web.commons.entity.factory.MapperEntityFactory;
 import org.hswebframework.web.commons.model.Model;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
 import org.hswebframework.web.starter.entity.EntityFactoryInitConfiguration;
 import org.hswebframework.web.starter.entity.EntityProperties;
@@ -77,8 +78,14 @@ public class HswebAutoConfiguration {
     @Primary
     @ConfigurationProperties(prefix = "fastjson")
     public FastJsonHttpMessageConverter fastJsonHttpMessageConverter(@Autowired(required = false) EntityFactory entityFactory) {
+        return new FastJsonHttpMessageConverter();
+    }
+    @Bean
+    @Primary
+    @ConfigurationProperties(prefix = "fastjson")
+    public FastJsonGenericHttpMessageConverter fastJsonGenericHttpMessageConverter(@Autowired(required = false) EntityFactory entityFactory) {
         JSON.DEFAULT_PARSER_FEATURE |= Feature.DisableFieldSmartMatch.getMask();
-        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
+        FastJsonGenericHttpMessageConverter converter = new FastJsonGenericHttpMessageConverter();
         converter.setFeatures(
                 SerializerFeature.WriteNullListAsEmpty,
                 SerializerFeature.WriteNullNumberAsZero,
@@ -112,7 +119,7 @@ public class HswebAutoConfiguration {
     }
 
     @Bean
-    public JsonParamResolver jsonParamResolver(FastJsonHttpMessageConverter fastJsonHttpMessageConverter) {
+    public JsonParamResolver jsonParamResolver(FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter) {
         return new JsonParamResolver(fastJsonHttpMessageConverter);
     }
 

+ 183 - 0
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/convert/FastJsonGenericHttpMessageConverter.java

@@ -0,0 +1,183 @@
+package org.hswebframework.web.starter.convert;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.parser.ParserConfig;
+import com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer;
+import com.alibaba.fastjson.parser.deserializer.ObjectDeserializer;
+import com.alibaba.fastjson.serializer.PropertyFilter;
+import com.alibaba.fastjson.serializer.SerializeFilter;
+import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.alibaba.fastjson.serializer.SimplePropertyPreFilter;
+import org.hswebframework.web.ThreadLocalUtils;
+import org.hswebframework.web.commons.entity.Entity;
+import org.hswebframework.web.commons.entity.factory.EntityFactory;
+import org.hswebframework.web.commons.model.Model;
+import org.hswebframework.web.controller.message.ResponseMessage;
+import org.hswebframework.utils.StringUtils;
+import org.springframework.core.Ordered;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.MediaType;
+import org.springframework.http.converter.AbstractGenericHttpMessageConverter;
+import org.springframework.http.converter.AbstractHttpMessageConverter;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.lang.reflect.Modifier;
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+public class FastJsonGenericHttpMessageConverter extends AbstractGenericHttpMessageConverter<Object> implements Ordered{
+
+    public final static Charset UTF8 = Charset.forName("UTF-8");
+
+    private Charset charset = UTF8;
+
+    private SerializerFeature[] features = new SerializerFeature[0];
+
+    private EntityFactory entityFactory;
+
+    public FastJsonGenericHttpMessageConverter() {
+        super(new MediaType("application", "json", UTF8),
+                new MediaType("application", "*+json", UTF8));
+    }
+
+    @Override
+    public int getOrder() {
+        return Ordered.HIGHEST_PRECEDENCE;
+    }
+
+    public void setEntityFactory(EntityFactory entityFactory) {
+        this.entityFactory = entityFactory;
+    }
+
+    public EntityFactory getEntityFactory() {
+        return entityFactory;
+    }
+
+    @Override
+    protected boolean supports(Class<?> clazz) {
+
+        return true;
+    }
+
+    @Override
+    public boolean canRead(Type type, Class<?> contextClass, MediaType mediaType) {
+        return  type instanceof ParameterizedType&& super.canRead(type, contextClass, mediaType);
+    }
+
+    @Override
+    protected Object readInternal(Class<?> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+        return read(clazz, clazz, inputMessage);
+    }
+
+    public Charset getCharset() {
+        return this.charset;
+    }
+
+    public void setCharset(Charset charset) {
+        this.charset = charset;
+    }
+
+    public SerializerFeature[] getFeatures() {
+        return features;
+    }
+
+    public void setFeatures(SerializerFeature... features) {
+        this.features = features;
+    }
+
+    public Object readByString(Type type, String jsonStr) {
+        return readByBytes(type, jsonStr.getBytes());
+    }
+
+
+    public Object readByBytes(Type type, byte[] bytes) {
+        if (type == String.class) return new String(bytes, charset);
+//        if (type instanceof Class) {
+//            Class typeClass = ((Class) type);
+//            if (entityFactory != null && (Entity.class.isAssignableFrom(typeClass) || Model.class.isAssignableFrom(typeClass))) {
+//                @SuppressWarnings("unchecked")
+//                Class tmp = entityFactory.getInstanceType(typeClass);
+//                if (tmp != null) type = tmp;
+//            }
+//        }
+        return JSON.parseObject(bytes, 0, bytes.length, charset.newDecoder(), type);
+    }
+
+    @Override
+    public Object read(Type type, Class<?> contextClass, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+        ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        InputStream in = inputMessage.getBody();
+        byte[] buf = new byte[1024];
+        for (; ; ) {
+            int len = in.read(buf);
+            if (len == -1) {
+                break;
+            }
+            if (len > 0) {
+                baos.write(buf, 0, len);
+            }
+        }
+        byte[] bytes = baos.toByteArray();
+        return readByBytes(type, bytes);
+    }
+
+    public String converter(Object obj) {
+        if (obj instanceof String) return (String) obj;
+        String text;
+        String callback = ThreadLocalUtils.getAndRemove("jsonp-callback");
+        if (obj instanceof ResponseMessage) {
+            ResponseMessage message = (ResponseMessage) obj;
+            text = JSON.toJSONString(obj, parseFilter(message), features);
+        } else {
+            text = JSON.toJSONString(obj, features);
+        }
+        if (!StringUtils.isNullOrEmpty(callback)) {
+            text = new StringBuilder()
+                    .append(callback)
+                    .append("(").append(text).append(")")
+                    .toString();
+        }
+        return text;
+    }
+
+    @Override
+    protected void writeInternal(Object obj, Type type, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+        OutputStream out = outputMessage.getBody();
+        byte[] bytes = converter(obj).getBytes(charset);
+        out.write(bytes);
+        out.flush();
+    }
+
+    protected static SerializeFilter[] parseFilter(ResponseMessage<?> responseMessage) {
+        List<SerializeFilter> filters = new ArrayList<>();
+        if (responseMessage.getIncludes() != null)
+            for (Map.Entry<Class<?>, Set<String>> classSetEntry : responseMessage.getIncludes().entrySet()) {
+                SimplePropertyPreFilter filter = new SimplePropertyPreFilter(classSetEntry.getKey());
+                filter.getIncludes().addAll(classSetEntry.getValue());
+                filters.add(filter);
+            }
+        if (responseMessage.getExcludes() != null)
+            for (Map.Entry<Class<?>, Set<String>> classSetEntry : responseMessage.getExcludes().entrySet()) {
+                SimplePropertyPreFilter filter = new SimplePropertyPreFilter(classSetEntry.getKey());
+                filter.getExcludes().addAll(classSetEntry.getValue());
+                filters.add(filter);
+            }
+        PropertyFilter responseMessageFilter = (object, name, value) ->
+                !(object instanceof ResponseMessage) || value != null;
+        filters.add(responseMessageFilter);
+
+        return filters.toArray(new SerializeFilter[filters.size()]);
+    }
+
+}

+ 22 - 23
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/convert/FastJsonHttpMessageConverter.java

@@ -14,10 +14,11 @@ import org.hswebframework.web.commons.entity.factory.EntityFactory;
 import org.hswebframework.web.commons.model.Model;
 import org.hswebframework.web.controller.message.ResponseMessage;
 import org.hswebframework.utils.StringUtils;
+import org.springframework.core.Ordered;
+import org.springframework.core.annotation.Order;
 import org.springframework.http.HttpInputMessage;
 import org.springframework.http.HttpOutputMessage;
 import org.springframework.http.MediaType;
-import org.springframework.http.converter.AbstractGenericHttpMessageConverter;
 import org.springframework.http.converter.AbstractHttpMessageConverter;
 import org.springframework.http.converter.HttpMessageNotReadableException;
 import org.springframework.http.converter.HttpMessageNotWritableException;
@@ -27,7 +28,6 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.lang.reflect.Modifier;
-import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
 import java.nio.charset.Charset;
 import java.util.ArrayList;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-public class FastJsonHttpMessageConverter extends AbstractGenericHttpMessageConverter<Object> {
+public class FastJsonHttpMessageConverter extends AbstractHttpMessageConverter<Object> implements Ordered {
 
     public final static Charset UTF8 = Charset.forName("UTF-8");
 
@@ -59,13 +59,13 @@ public class FastJsonHttpMessageConverter extends AbstractGenericHttpMessageConv
     }
 
     @Override
-    protected boolean supports(Class<?> clazz) {
-        return true;
+    public int getOrder() {
+        return Ordered.LOWEST_PRECEDENCE;
     }
 
     @Override
-    protected Object readInternal(Class<?> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
-        return read(clazz, clazz, inputMessage);
+    protected boolean supports(Class<?> clazz) {
+        return true;
     }
 
     public Charset getCharset() {
@@ -84,25 +84,23 @@ public class FastJsonHttpMessageConverter extends AbstractGenericHttpMessageConv
         this.features = features;
     }
 
-    public Object readByString(Type type, String jsonStr) {
-        return readByBytes(type, jsonStr.getBytes());
+    public Object readByString(Class<?> clazz, String jsonStr) {
+        return readByBytes(clazz, jsonStr.getBytes());
     }
 
-    public Object readByBytes(Type type, byte[] bytes) {
-        if (type == String.class) return new String(bytes, charset);
-//        if (type instanceof Class) {
-//            Class typeClass = ((Class) type);
-//            if (entityFactory != null && (Entity.class.isAssignableFrom(typeClass) || Model.class.isAssignableFrom(typeClass))) {
-//                @SuppressWarnings("unchecked")
-//                Class tmp = entityFactory.getInstanceType(typeClass);
-//                if (tmp != null) type = tmp;
-//            }
-//        }
-        return JSON.parseObject(bytes, 0, bytes.length, charset.newDecoder(), type);
+    public Object readByBytes(Class<?> clazz, byte[] bytes) {
+        if (clazz == String.class) return new String(bytes, charset);
+        if (entityFactory != null && (Entity.class.isAssignableFrom(clazz) || Model.class.isAssignableFrom(clazz))) {
+            @SuppressWarnings("unchecked")
+            Class tmp = entityFactory.getInstanceType(clazz);
+            if (tmp != null) clazz = tmp;
+        }
+        return JSON.parseObject(bytes, 0, bytes.length, charset.newDecoder(), clazz);
     }
 
     @Override
-    public Object read(Type type, Class<?> contextClass, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+    protected Object readInternal(Class<?> clazz, HttpInputMessage inputMessage) throws IOException,
+            HttpMessageNotReadableException {
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         InputStream in = inputMessage.getBody();
         byte[] buf = new byte[1024];
@@ -116,7 +114,7 @@ public class FastJsonHttpMessageConverter extends AbstractGenericHttpMessageConv
             }
         }
         byte[] bytes = baos.toByteArray();
-        return readByBytes(type, bytes);
+        return readByBytes(clazz, bytes);
     }
 
     public String converter(Object obj) {
@@ -139,7 +137,8 @@ public class FastJsonHttpMessageConverter extends AbstractGenericHttpMessageConv
     }
 
     @Override
-    protected void writeInternal(Object obj, Type type, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+    protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException,
+            HttpMessageNotWritableException {
         OutputStream out = outputMessage.getBody();
         byte[] bytes = converter(obj).getBytes(charset);
         out.write(bytes);

+ 3 - 3
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/resolver/JsonParamResolver.java

@@ -17,7 +17,7 @@
 
 package org.hswebframework.web.starter.resolver;
 
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.springframework.core.MethodParameter;
 import org.springframework.web.bind.support.WebDataBinderFactory;
 import org.springframework.web.context.request.NativeWebRequest;
@@ -31,9 +31,9 @@ import org.springframework.web.method.support.ModelAndViewContainer;
  */
 public class JsonParamResolver implements HandlerMethodArgumentResolver {
 
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
-    public JsonParamResolver(FastJsonHttpMessageConverter fastJsonHttpMessageConverter) {
+    public JsonParamResolver(FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter) {
         this.fastJsonHttpMessageConverter = fastJsonHttpMessageConverter;
     }
 

+ 2 - 4
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-starter/src/test/java/org/hswebframework/web/starter/authorization/AuthorizationSettingTests.java

@@ -21,13 +21,11 @@ package org.hswebframework.web.starter.authorization;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.authorization.AuthorizationSettingEntity;
-import org.hswebframework.web.entity.authorization.SimpleAuthorizationSettingEntity;
 import org.hswebframework.web.service.authorization.AuthorizationSettingTypeSupplier;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
@@ -39,7 +37,7 @@ import org.springframework.http.MediaType;
 public class AuthorizationSettingTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 7
hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-starter/src/test/java/org/hswebframework/web/starter/dictionary/DictionaryParserTests.java

@@ -21,18 +21,13 @@ package org.hswebframework.web.starter.dictionary;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.dictionary.DictionaryParserEntity;
-import org.hswebframework.web.entity.dictionary.SimpleDictionaryItemEntity;
-import org.hswebframework.web.entity.dictionary.SimpleDictionaryParserEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
-import java.util.List;
-
 /**
  * TODO 完善单元测试
  *
@@ -41,7 +36,7 @@ import java.util.List;
 public class DictionaryParserTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 5
hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-starter/src/test/java/org/hswebframework/web/starter/dictionary/DictionaryTests.java

@@ -23,17 +23,14 @@ import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.commons.entity.DataStatus;
 import org.hswebframework.web.entity.dictionary.DictionaryEntity;
 import org.hswebframework.web.entity.dictionary.DictionaryItemEntity;
-import org.hswebframework.web.entity.dictionary.SimpleDictionaryEntity;
 import org.hswebframework.web.entity.dictionary.SimpleDictionaryItemEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
-import javax.xml.crypto.Data;
 import java.util.List;
 
 /**
@@ -44,7 +41,7 @@ import java.util.List;
 public class DictionaryTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 5
hsweb-system/hsweb-system-oauth2-client/hsweb-system-oauth2-client-starter/src/test/java/org/hswebframework/web/starter/oauth2/client/OAuth2ServerConfigTests.java

@@ -21,17 +21,14 @@ package org.hswebframework.web.starter.oauth2.client;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.authorization.oauth2.client.OAuth2RequestService;
-import org.hswebframework.web.authorization.oauth2.client.exception.OAuth2RequestException;
 import org.hswebframework.web.entity.oauth2.client.OAuth2ServerConfigEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
-import java.util.Map;
-
 /**
  * TODO 完善单元测试
  *
@@ -40,7 +37,7 @@ import java.util.Map;
 public class OAuth2ServerConfigTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
 
     @Autowired

+ 2 - 4
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/DepartmentTests.java

@@ -21,12 +21,10 @@ package org.hswebframework.web.starter.organizational;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.organizational.DepartmentEntity;
-import org.hswebframework.web.entity.organizational.SimpleDepartmentEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
@@ -38,7 +36,7 @@ import org.springframework.http.MediaType;
 public class DepartmentTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 4
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/OrganizationalTests.java

@@ -21,12 +21,10 @@ package org.hswebframework.web.starter.organizational;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.organizational.OrganizationalEntity;
-import org.hswebframework.web.entity.organizational.SimpleOrganizationalEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
 
@@ -38,7 +36,7 @@ import org.springframework.http.MediaType;
 public class OrganizationalTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 2
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/PersonTests.java

@@ -21,7 +21,7 @@ package org.hswebframework.web.starter.organizational;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.organizational.PersonEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
@@ -36,7 +36,7 @@ import org.springframework.http.MediaType;
 public class PersonTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {

+ 2 - 2
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-starter/src/test/java/org/hswebframework/web/starter/organizational/PositionTests.java

@@ -21,7 +21,7 @@ package org.hswebframework.web.starter.organizational;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.hswebframework.web.entity.organizational.PositionEntity;
-import org.hswebframework.web.starter.convert.FastJsonHttpMessageConverter;
+import org.hswebframework.web.starter.convert.FastJsonGenericHttpMessageConverter;
 import org.hswebframework.web.tests.SimpleWebApplicationTests;
 import org.junit.Assert;
 import org.junit.Test;
@@ -36,7 +36,7 @@ import org.springframework.http.MediaType;
 public class PositionTests extends SimpleWebApplicationTests {
 
     @Autowired
-    private FastJsonHttpMessageConverter fastJsonHttpMessageConverter;
+    private FastJsonGenericHttpMessageConverter fastJsonHttpMessageConverter;
 
     @Test
     public void testCrud() throws Exception {