我正在为现有的 Web 应用程序进行更新。我编写了一些类来创建表和添加/删除数据。出于某种原因,我可以插入数据,但即使表中有数据,我也无法检索结果。我使用返回结果的相同代码创建了一个测试类。但是,当将我的类作为服务调用时,resultSet 每次都是 null。另请注意,我可以使用我的代码从其他一些现有表中提取数据,而不是从我创建的表/对象中提取数据。此外,我从调试器中获取了 SQL 查询并针对数据库运行它,并获得了结果。
这是代码:
public DiscountCode getDiscountCodeDetails(String code) {
Session session = HibernateUtil.openSession();
Transaction transaction = session.beginTransaction();
String query = "from DiscountCode where isActive = 1 and discountCode = :replace";
**DiscountCode discountCode** = (DiscountCode) session.createQuery(query).setParameter("replace", code).uniqueResult();
transaction.commit();
session.close();
return discountCode;
}
discountCode 始终为 NULL。
此测试代码在一个带有 main 的简单类中工作: String replace = "TEXT10";
Session session = HibernateUtil.openSession();
Transaction transaction = session.beginTransaction();
String query = "from DiscountCode where isActive = 1 and discountCode = :replace";
DiscountCode discountCode = (DiscountCode) session.createQuery(query).setParameter("replace", replace).uniqueResult();
transaction.commit();
session.close();
System.out.println(discountCode.getDiscountCodeName());
我已经为此奋斗了很长一段时间,需要尽快过去。任何帮助将不胜感激。