2014-11-06 77 views

回答

4

這樣做的原因行爲是MapperFeatureDEFAULT_VIEW_INCLUSION

從的Javadoc:

默認值爲啓用,這意味着未標註屬性包含在所有的意見,如果沒有JsonView註釋

在新澤西州,您可以通過禁用此功能JacksonJaxbJsonProvider。這應該以類似的方式用於其他JAX-RS框架。

@ApplicationPath("/api") 
public class MyApplication extends ResourceConfig { 
    public MyApplication() { 
    ... 

    JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider(); 
    ObjectMapper objectMapper = new ObjectMapper(); 
    objectMapper.disable(MapperFeature.DEFAULT_VIEW_INCLUSION);  
    provider.setMapper(objectMapper); 

    register(provider); 

    ... 
    } 
}