-1

Oracle10g データベースを使用しています。私はこのクエリを試しました:

public List<Ods_Gis_Actel> getAll() {
        Session session = HibernateUtil.getSessionFactory().getCurrentSession();
        session.beginTransaction();
        List<Ods_Gis_Actel> L = session.createQuery("from Ods_Gis_Actel").list();
        session.beginTransaction().commit();
    return L;
    }

それは機能し、期待される結果を返しました。

しかし、このクエリは機能せず、null 値を返し続けました。

    public Ods_Gis_Actel getById(String id) {
    Session session = HibernateUtil.getSessionFactory().getCurrentSession();
    session.beginTransaction();
    Ods_Gis_Actel a = (Ods_Gis_Actel) session.get(Ods_Gis_Actel.class,new String(id));
    return a;
}

これは Ods_Gis_Actel クラスです。

package dao; 
public class Ods_Gis_Actel {
    private String code_actel;
    private String nom_actel;
    private String code_region;
    private String libelle_region;
}

私の構成ファイルと HibernateUtil は正常で正しいです。

ここでビデオチュートリアルからクエリ関数の行をコピーしましたすべてが正常に機能していました。これはOracle10gHibernateの互換性の問題でしょうか?

4

1 に答える 1

0

おそらく、あなたの ID ( ) のレコードはありませんString id
削除する必要がありますsession.beginTransaction();

 Ods_Gis_Actel a = (Ods_Gis_Actel) session.get(Ods_Gis_Actel.class,id);
于 2013-08-02T04:34:14.180 に答える