0
我有一些问题。 我正在使用jpa(glassfish 3.1的eclipselink)和一个mysql数据库。JPA本机sql结果列表铸造
假设我有一个学生表,其中包含一个日期时间的“创建”字段。 使用sql如果我要选择在“2012-03-30”,无论创建时的所有记录:
select * from student where date(created) = '2012-03-30'
好,它的工作。
现在我想在jpql中做同样的事情。我不认为这是可行的。 所以我试图用本机查询:
Result : 3
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to com.tuto.entities.Train
我的学生类有@Entity批注和:
entityManager.createNativeQuery("select * from student where date(creation) = '2012-03-30';
List<Student> students = (List<Student>)query.getResultList();
System.out.println("Result : "+students.size());
for (Student student : (List<Student>)students)
{
System.out.println(student);
}
我有和没有在第2和4的铸件,但总是同样的结果尝试一切工作正常使用
entityManager.createQuery("select s from Student s where s.age = '25');
怎么了?
好的,已解决。等待8小时回答我的问题... entityManager.createNativeQuery(“select * from student where date(creation)='2012-03-30',Student.class); – tweetysat 2012-03-30 12:59:44