0
私はいくつか問題があります。 私はjpa(glassfish 3.1のeclipselink)とmysql dbを使って作業しています。JPAネイティブSQLの結果リストキャスト
私はdatetimeである 'creation'フィールドを持つstudentテーブルを持っているとしましょう。 私は「2012-03-30」、どんなにに時間を作成したすべてのレコードを選択したい場合は、SQLを使用して:
select * from student where date(created) = '2012-03-30'
[OK]を、その作業を。
今、私はjpqlで同じことをしたいと思います。そして私はそれがポーズブルだとは思わない。
Result : 3
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to com.tuto.entities.Train
私の学生のクラスは@Entityアノテーションを持っており、私はライン2と4で鋳物が、常に同じ結果ととせずに試してみました
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);
}
: は、だから私は、ネイティブクエリで試してみましたすべて正常に動作しています
entityManager.createQuery("select s from Student s where s.age = '25');
何が問題なのですか?
[OK]を解決しました。私の質問に答えるために8時間待っています... entityManager.createNativeQuery( "select * from student where date(creation)= '2012-03-30'、Student.class); – tweetysat