Pessoal,
As datas estão corretas no banco, mas quando são resgatadas, ficam com 3 horas a mais, o que está deixando as datas as vezes com um dia a mais.
Data no banco: 2019-11-09 23:00:00
Data no jsp: 10/11/2019
Método do DAO do produto que busca as infos:
public Produto find(int id){ Produto p = manager.createQuery("select distinct(p) from Produto p join fetch p.precos precos where p.id = :id", Produto.class).setParameter("id", id).getSingleResult(); System.out.println(p.toString()); return p; }
Saída do console (atributo dataLancamento)
java.util.GregorianCalendar[time=1573351200000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="America/Sao_Paulo",offset=-10800000,dstSavings=3600000,useDaylight=true,transitions=129,lastRule=java.util.SimpleTimeZone[id=America/Sao_Paulo,offset=-10800000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=10,startDay=1,startDayOfWeek=1,startTime=0,startTimeMode=0,endMode=3,endMonth=1,endDay=15,endDayOfWeek=1,endTime=0,endTimeMode=0]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2019,MONTH=10,WEEK_OF_YEAR=46,WEEK_OF_MONTH=3,DAY_OF_MONTH=10,DAY_OF_YEAR=314,DAY_OF_WEEK=1,DAY_OF_WEEK_IN_MONTH=2,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=-10800000,DST_OFFSET=3600000]
Classe Modelo: @Entity public class Produto {
@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
private String titulo;
private String descricao;
private int paginas;
private String sumarioPath;
@ElementCollection
private List<Preco> precos;
@DateTimeFormat
private Calendar dataLancamento;
public Calendar getDataLancamento() {
return dataLancamento;
}
public void setDataLancamento(Calendar dataLancamento) {
this.dataLancamento = dataLancamento;