Ошибка идентификатора Jackson + SugarOrm

Я использую Джексон и сахарную форму, и у меня есть некоторые ошибки при разборе. Поле id постоянно находится в json 0. Что я могу сделать, чтобы это исправить?

Этот пример моего класса:

@JsonIgnoreProperties(ignoreUnknown = true)
public class JsonScienceEvent extends SugarRecord<JsonScienceEvent>{

    @JsonProperty("id")
    private String eventId;

public JsonScienceEvent()

public JsonScienceEvent(String eventId){
    this.eventId = eventId;
}

public String getEventId(){
    return eventId;
}

2 ответа

Решение

Полеid наследуется от суперкласса SugarRecord<T> наряду с методами установки и получения setId(Long id) а также getId(), Вы можете override id поле, созданное библиотекой Sugar, но насколько я помню, она использует Long введите так, если вы можете изменить идентификатор строки на длинный, все должно быть в порядке, и таким образом вы можете заставить библиотеку использовать id вы устанавливаете с сеттером setId(Long id),

Sugar ORM фактически создает собственное поле идентификатора для поддержки. Если вы не вставляете значение в поле eventId при создании записи, тогда ваш столбец пуст.

Попробуйте использовать "getId ()", чтобы получить автоматически увеличенный идентификатор из записи. Не забывайте приводить в строку, если это то, что вы хотите вернуть!

Другие вопросы по тегам