У меня есть следующий абстрактный класс:Override @JsonIgnore в подклассе
public abstract class StandardTimeStamp {
@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false)
@JsonIgnore
private Date lastUpdated;
@PreUpdate
public void generatelastUpdated() {
this.lastUpdated = new Date();
}
public Date getLastUpdated() {
return lastUpdated;
}
public void setLastUpdated(Date lastUpdated) {
this.lastUpdated = lastUpdated;
}
}
У меня есть объект, который является подклассом, в котором мне нужно lastUpdate значение для отправки в браузер, так что мне нужно переопределить @JsonIgnore. Я попробовал несколько вещей, следующий код является одним из них:
public class MyEntity extends StandardTimestamp implements Serializable {
@Column(name = "LastUpdated")
private Date lastUpdated;
@JsonIgnore(false)
@Override
public Date getLastUpdated() {
return lastUpdated;
}
}
Это добавить LastUpdated атрибут в ответ JSON, однако его значение равно нулю, когда оно не равно нулю в базе данных. У меня есть другие Даты в подклассе, которые работают, но они не скрыты с @IgnoreJson в суперклассе.
Любые мысли?
Это работает, однако я все еще получаю null в атрибуте JSON на интерфейсе, но я думаю, что это на стороне базы данных. Я буду продолжать изучать это. Спасибо за отличный ответ! :) –