Dúvida em relaçâo à hibernate

Fala galera blz?

É o seguinte:
o valor padrão de horário gerado pelo hibernate é 00:00

Gostaria de saber se existe alguma maneira de mudar esse horário padrão que é gerado pelo mesmo.

Desde já agradeço.

Não entendi muito bem a sua dúvida, cara. Isso seria o padrão do hibernate pra que? ele persiste assim no banco por padrão? é isso?

O hibernate persiste como horário padrão no banco de dados 00:00hs.

O que eu gostaria de saber é se tem como alterar esse horário padrão para as 12:00hs por exemplo.

Meu problema é o seguinte:

Tenho uma tela em que alguns dados são gravados.

Estou utilizando o servidor Glassfish + Hibernate.

Como padrão, o horário de gravação que está sendo gerado é a meia noite.

O problema que ocorre é o seguinte:

  • Quando efetuo a gravação de dados em um dia em que começa o horário de verão, o horário de gravação gerado não é mais a meia noite, e sim às 23hs do dia anterior,
    gerando erro de 1 hora, e erro de 1 dia na data de gravação, pois como volta uma hora, fica com a data do dia anterior.

Este problema não ocorre no servidor TomCat, mas sim, somente no glassfish.

Pesquisei bastante na internet mas não encontrei uma forma de resolver este problema.

Gostaria de saber se alguém já passou por um problema como este ou alguma solução que eu poderia estar utilizando.

Já tentei também que fazer com que o horário padrão gerado pelo java seja meia dia, ou seja, às 12hs, mas nã consegui, pois o horário padrão gerado pelo java é as 00:00hs.

Mais uma vez não ficou claro pra mim.

Esse horário padrão é gerado por quem? é um java.util.Date que possui esse valor quando instanciado por algum método seu? qual o tipo do objeto? Como ele está mapeado ?

Este horário padrão é gerado na classe ResultSet, método getDate do hibernate.

ah ta, acho que agora eu entendi.

Primeiro ponto: o ResultSet não é do Hibernate, é java.sql.ResultSet, utilizado com JDBC.

Segundo ponto: Eu acho que o seu problema está sendo causado por salvar somente a data no banco de dados, sem horário nenhum, então quando busca a data, ele seta o horário (default como você disse de 00:00).

Duvido que isso seja alterável.

Agora quanto ao horário de verão, se não me engano sempre foi um ponto delicado se falando em horário brasileiro, onde o horário de verão não segue um calendário fixo, e é uma decisão política (se não me engano). Se não me engano você pode ter que atualizar sua JVM.

Vi um link no GUJ a um tempo sobre isso: http://www.guj.com.br/java/82281-problemas-com-a-jvm-e-horario-de-verao

Não teria como eu setar este horário default para as 12:00hs por exemplo, ao invés de 00:00hs?

Eu acredito que não, se tiver eu não sei como, visto que é um método ja implementado.

você poderia fazer seu próprio método, que internamente faz o getDate() e você seta o horário que quiser na mão.public Date pegarDataDoResultSet(ResultSet rs, int num){ Date minhaData = rs.getDate(num); // Manipula a data. return minhaData; }

Ok, obrigado!

Existe algum tipo de dado no hibernate, do tipo data, que não contenha a hora?

Mapeando Datas (Date) e Enum [=