我有以下代码将注释的Java对象转换为Json String。

 try {
            String jsonString = mapper.writeValueAsString(obj);
            LOGGER.debug("logAsJson", jsonString);
        } catch (Exception e) {
            LOGGER.warn("logAsJson", "Exception in logging only. Nothing critical! ", e);
        }


我的课看起来像这样

公共类车{

@JsonProperty("capabilities")
private List<Capability> capability = new ArrayList<Capability>();

@JsonProperty("periodicity")
@NotNull
private Periodicity periodicity;

@JsonProperty("car_driver")
private List<carDriver> carDriver = new ArrayList<carDriver>();


}

问题是,从对象创建json字符串时,对象映射器未考虑字段名称的注释。

提前致谢。

最佳答案

您可能已经从不同的库版本导入了json批注和对象映射器。确保它们来自同一库。

例,

import com.fasterxml.jackson.annotation.JsonProperty;



import com.fasterxml.jackson.databind.ObjectMapper;

关于java - ObjectMapper不考虑注释,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32659915/

10-09 07:07