我的目标是配置objectMapper
,使其仅序列化带有注释的元素@JsonProperty
。
为了做到这一点,我按照下面的说明进行了说明,该说明说明了如何配置对象映射器。
我包括自定义描述objectmapper 这里。
但是,当类NumbersOfNewEvents
被序列化时,它仍包含json中的所有属性。
有人暗示吗?提前致谢
Jackson 1.8.0 spring 3.0.5
CustomObjectMapper
public class CompanyObjectMapper extends ObjectMapper {
public CompanyObjectMapper() {
super();
setVisibilityChecker(getSerializationConfig()
.getDefaultVisibilityChecker()
.withCreatorVisibility(JsonAutoDetect.Visibility.NONE)
.withFieldVisibility(JsonAutoDetect.Visibility.NONE)
.withGetterVisibility(JsonAutoDetect.Visibility.NONE)
.withIsGetterVisibility(JsonAutoDetect.Visibility.NONE)
.withSetterVisibility(JsonAutoDetect.Visibility.DEFAULT));
}
}
servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<context:component-scan base-package="de.Company.backend.web" />
<mvc:annotation-driven />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="objectMapper" ref="jacksonObjectMapper" />
</bean>
</list>
</property>
</bean>
<bean id="jacksonObjectMapper" class="de.Company.backend.web.CompanyObjectMapper" />
</beans>
NumbersOfNewEvents
public class NumbersOfNewEvents implements StatusAttribute {
public Integer newAccepts;
public Integer openRequests;
public NumbersOfNewEvents() {
super();
}
}
使用Spring Boot(1.2.4)和Jackson(2.4.6),以下基于注释的配置对我有用。
@Configuration
public class JacksonConfiguration {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
mapper.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, true);
return mapper;
}
}
问题内容: 我的目标是配置,使其仅序列化带有注释的元素。 为了做到这一点,我按照下面的说明进行了说明,该说明说明了如何配置对象映射器。 我包括自定义描述这里。 但是,当类被序列化时,它仍包含中的所有属性。 有人暗示吗?提前致谢 杰克逊1.8.0Spring3.0.5 CustomObjectMapper servlet.xml 问题答案: 使用Spring Boot(1.2.4)和Jackson(
问题内容: 我曾经让我的所有DAO扩展了该类,而该类现在在Spring 3.1中 已弃用。我已经制作了自己的类,其中包装了所有DAO ,并从那里扩展了所有内容。那是我应该做的方式吗? 同样在JDO的文档中,似乎直接实例化并不是默认选项,而是使用包裹在中。如何正确实例化这些bean并使它们与Spring的注释一起使用。 这是我的应用程序上下文中与持久性相关的部分: 现在,当我加载访问数据存储的页面时
问题内容: 我有点问题。我需要在此拦截器中调用每个请求的postHandle方法: 所以我将这一行放入servlet配置中,一切正常。 但是现在我必须更改配置和使用 通过这种配置,我在postHandle方法中的modelAndView上得到了一系列空指针异常,因为每个请求多次调用postHandle方法。 使用此配置,它可以工作,但仅适用于请求serverAdress /任何东西。对于请求ser
我是春靴的新手。我有一个跑步Spring靴项目。我想使用log4j2(由于项目限制,我必须使用log4j2本身)将不同级别的所有日志重定向到一个名为'test.log'的日志文件。 ---我的测试API的控制器也有以下测试日志行: ---在我的理解中,我已经在代码中包含了所有必需的内容。但是我面临着这个问题--当我使用API时,只有hibernate调试记录器被添加到test.log中;我在con
我使用这个命令运行我的spring应用程序-java-jar,但是当从IDE运行应用程序时,我需要添加运行配置,下面是显示我所添加内容的屏幕截图,但是它对我不起作用。
这个问题是关于Spring中的Java config。是否可以用Java代码替换下面的声明。 其中:secure-app-context.xml