我遇到了一个错误。即使我使用的值和查询是正确的,数据库查询似乎也会返回一个空值。
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;
}
(Log4j 在控制台中显示了正确的查询,我确信我正在搜索的行存在于表中)。
查询 getAll() 工作正常,所以我认为这意味着映射是正确的。 可以是 hibernate.util 吗?
公共类 HibernateUtil { 公共静态最终 SessionFactory sessionFactory;
static {
try {
// Creation of SessionFactory from hibernate.cfg.xml
sessionFactory = new Configuration().configure("Hibernate.cfg.xml").buildSessionFactory();
} catch (Throwable ex) {
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
// public static final ThreadLocal session = new ThreadLocal();
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
谢谢,