0

我正在为现有的 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());

我已经为此奋斗了很长一段时间,需要尽快过去。任何帮助将不胜感激。

4

0 回答 0