json转换为java对象多传属性问题

来源:互联网 发布:wps数据透视图求和 编辑:程序博客网 时间:2024/05/17 04:56
Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "beginTime1" (class com.TestController$TimeInfo), not marked as ignorable (one known property: "beginTime"])
 at [Source: org.springframework.mock.web.DelegatingServletInputStream@673a3a01; line: 1, column: 25] (through reference chain: com.TimeInfo["beginTime1"])

前台json多传beginTime1属性,但是java类型没有此属性 

js传递如下

"{\"beginTime1\":1000000000}"


java对象如下

public class TimeInfo {
private Timestamp beginTime;


public Timestamp getBeginTime() {
return beginTime;
}


public void setBeginTime(Timestamp beginTime) {
this.beginTime = beginTime;
}


}


转换时会报如上错误,原因是默认的json转换时FAIL_ON_UNKNOWN_PROPERTIES=true没有属性会报错,可以通过配置更改

<!-- 启动springMVC注解功能 -->
<mvc:annotation-driven enable-matrix-variables="true">
<mvc:message-converters register-defaults="false">
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper" ref="dataObjectMapper">
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>


<bean name="dataObjectMapper" class="com.fasterxml.jackson.databind.ObjectMapper">
<property name="serializationInclusion">
<value type="com.fasterxml.jackson.annotation.JsonInclude$Include">NON_NULL</value>
</property>
</bean>
<bean
class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject" ref="dataObjectMapper" />
<property name="targetMethod" value="configure" />
<property name="arguments">
<list>
<value type="com.fasterxml.jackson.databind.DeserializationFeature">FAIL_ON_UNKNOWN_PROPERTIES</value>
<value>false</value>
</list>
</property>
</bean>

0 0
原创粉丝点击