【问题标题】:Hibernate Query doesn't work休眠查询不起作用
【发布时间】:2013-08-03 05:39:45
【问题描述】:

我正在使用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;
    }

它工作并返回了预期的结果。

但是这个查询没有工作并且一直返回一个空值。

    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的兼容性问题?

【问题讨论】:

  • 你能发布你的 Ods_Gis_Actel 课程吗?
  • 包道;公共类 Ods_Gis_Actel { 私有字符串 code_actel;私人字符串 nom_actel;私有字符串代码区域;私有字符串 libelle_region;
  • + 所有 setter 和 getter + 默认构造函数 + 带有所有字段的构造函数
  • 在您的示例中查找查询行和返回行之间的 1 个差异。
  • 亚历山大先生,你为什么说谜语?!

标签: hibernate jakarta-ee spring-mvc jdbc oracle10g


【解决方案1】:

可能没有您的 id (String id) 的记录。
你应该删除session.beginTransaction();

 Ods_Gis_Actel a = (Ods_Gis_Actel) session.get(Ods_Gis_Actel.class,id);

【讨论】:

  • 你的意思是表中没有具有该id的行?不,我确定有。
猜你喜欢
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 2019-11-18
  • 2018-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-05
相关资源
最近更新 更多