父类是个常规JavaBean,子类继承后重写某个get方法加上serialize=false,结果该字段还是被序列化,FastJson版本是1.2.29
Q
[alibaba/fastjson]重写的get方法加上serialize=false依然被序列化
6
A
回答
3
我加了一个testcase,不知道是不是你想要的,测试结果是没有问题的。
1
Hi kimmking, Thanks for your response. 我这边是使用了SpringMVC框架controller返回数据时发生了issue所述情况,有如下配置,是否会有影响呢?:
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<bean
class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json</value>
</list>
</property>
<property name="fastJsonConfig">
<bean class="com.alibaba.fastjson.support.config.FastJsonConfig">
<property name="serializerFeatures">
<list>
<value>DisableCircularReferenceDetect</value>
</list>
</property>
</bean>
</property>
</bean>
<bean
class="org.springframework.http.converter.StringHttpMessageConverter" />
<bean
class="org.springframework.http.converter.ResourceHttpMessageConverter" />
</list>
</property>
</bean>
TestCase在准备~~
9
我猜到一种可能性,今天有空试试。
1
我添加了一种情况来测试还是没有问题: 就是再嵌套一层Bean,里面的值属性或字段用父类型,然后值用子类型。
7
我发现在springMVC的配置下面还有个里面会有个messageConverters貌似会覆盖掉上面配置的FastJsonHttpMessageConverter。因为跟踪代码跟到Spring自带的fastxml.jackson包去了~把messageConverter配置全部从 标签转移到 标签下,问题Fix。
KimmKing,sorry,耽误了你的宝贵时间~~