Comment faire pour convertir correctement un Oracle champ de Date en java.util.Date par JPA?

J'ai un Oracle Date colonne dans une table db, et de l'extraction de ce domaine,

EntityManagerFactory emf = Persistence.createEntityManagerFactory("dbPU");
EntityManager em = emf.createEntityManager();

DateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy, HH:mm");
String query = "SELECT T.MDATE FROM MTABLE T";

List<Object[]> resultList = em.createNativeQuery(query).getResultList();
for (Object[] data : resultList) {
    System.out.println(dateFormat.format((java.util.Date) data[0]));
}

De la "date" de la partie de l'imprimé dates sont correctes, mais le "temps" (ie. heure et seconde) les pièces sont "00:00" pour tous. Cependant, quand j'ai vérifié ce domaine dans SQL Developer, le "temps" de pièces sont différents de ce qu' "00:00". Où est le problème? Merci à l'avance.

EDIT:
Je suis aide,

Hibernate-Version: 3.2.5.ga
hibernate.dialect = org.hibernate.dialect.Oracle10gDialect
Oracle JDBC Driver version 10.2.0.1.0
Oracle Database 11g Express Edition Release 11.2.0.2.0
  • cela vous aide ? coderanch.com/t/464371/ORM/java/JPA-Oracle-Date
  • ou cette stackoverflow.com/questions/3469018/... ou stackoverflow.com/questions/6347532/...
  • Aucun des liens ne l'aide pas. Je suis quering en natif, il n'y a pas de classe d'entité avec le Date attribut et @Temporal annotation en elle. Aussi, je suis en train de lire des régimes autres que l'écriture en elle. Mettre un peu plus d'info sur la question, voir l'édition.
  • Je sais que c'est pas une solution, mais peut-requête: SELECT to_char(T. MDATE, 'dd.mm.yyyy hh24:mi') à PARTIR de MTABLE T" puis de le convertir en java à une date (c'est à dire avec dateFormat) ?
  • Oui, je peux, et le temps que les pièces sont correctement lus dans cette situation. Mais mon exigence est d'écrire des requêtes et non pas en fonction d'Oracle seulement. Il doit être exécutable sur SQL Server.
InformationsquelleAutor Uluk Biy | 2012-02-15