2016-08-13 2 views
0

Как можно использовать jackson MappingJackson2HttpMessageConverter конвертировать a pogo в json без @JSONProperty НА каждое свойство?Может ли Джексон конвертировать POGO в JSON весной без @JSONProperty?

Я использую заводной в загрузочном проекте ярового и без кода Java, я хав модели домена с именем FileInfo.groovy:

class FileInfo { 
    private String name 

    @JsonProperty("is_dir") 
    private boolean isDirectory 

    @JsonProperty("last_modified") 
    private String lastModifiedTime 
} 

Я настроил MappingJackson2HttpMessageConverter в @Configuration @EnableWebMvc классе.

и при возврате FileInfo в контроллере с @ResponseBody, нет name в результате json;

Я знаю, что свойство пога получает доступ public void setProperty(java.lang.String, java.lang.Object);

Так есть аннотация на классе, который можно отметить пый, который может конвертировать Джексон? Потому что слишком шумно использовать @JSONProperty на каждом объекте.

+0

add setter и getter могут решить это, но сделать pogo уродливым. – WesleyHsiung

+0

Почему бы не сделать имя общедоступным (т.е. просто удалить 'private', чтобы у вас было' String name') –

ответ

0

См. this question. Вопрос показывает, как установить видимость для класса, а принятый ответ показывает, как установить видимость для всего ObjectMapper.

Идея состоит в том, чтобы установить видимость поля на Visibility.ANY, чтобы подобрать частные поля.

Смежные вопросы