0

私のsudoコードは、

getCurrentSession().createQuery(myQueryBuilder.toString()).setParameter("gender", new String[] { Gender.MALE, Gender.FEMALE });

実行時にクエリを実行しているときにエラーが発生する

java.lang.ClassCastException: [Ljava.lang.String; cannot be cast to java.lang.String
    at org.hibernate.type.StringType.toString(StringType.java:44)
    at org.hibernate.type.NullableType.toLoggableString(NullableType.java:218)
    at org.hibernate.pretty.Printer.toString(Printer.java:76)"

文字列配列を渡すことが問題を引き起こしていると思います。

誰かがこれを解決する方法を教えてもらえますか?

4

2 に答える 2

0

1、配列 String[] をオブジェクト String にキャストしようとしているため、例外が発生しています。

//modify
getCurrentSession().createQuery(myQueryBuilder.toString()).setParameter("gender", Gender.MALE);
or
getCurrentSession().createQuery(myQueryBuilder.toString()).setParameter("gender", Gender.FEMALE);
于 2013-09-24T09:20:34.447 に答える