java - 由 : org. hibernate.QueryException 引起:未设置所有命名参数:[isActive] [from User where isActive = :isActive]

标签 java hibernate hql

我有一个用户表,由活跃用户的 boolean 值组成,如下表所示

id | name | active
1  | john | false
2  | bob  | true
3  | jeff | true

在上面的结构中,我想检索 isActive 等于 true 的用户列表。

这是我的hql查询

public List getByIsActive(boolean isActive) {
        return  getSession().createQuery(
                "from User where isActive = :isActive").list();
    }

我是这样取的

@ResponseBody
    @RequestMapping(value = "/get-all-activeusers", method = RequestMethod.GET)
    public List<User> getAllActiveUsers() {
        try {

            boolean isActive = true;
            return _userDao.getByIsActive(isActive);

        } catch (Exception e) {
            logger.error("Exception in fetching active users: ", e.getStackTrace());
            e.printStackTrace();
        }
        return null;
    }

我收到这个错误

Caused by: org.hibernate.QueryException: Not all named parameters have been set: [isActive] [from User where isActive = :isActive]
    at org.hibernate.internal.AbstractQueryImpl.verifyParameters(AbstractQueryImpl.java:401)
    at org.hibernate.internal.AbstractQueryImpl.verifyParameters(AbstractQueryImpl.java:385)
    at org.hibernate.internal.QueryImpl.list(QueryImpl.java:99)
    at com.models.UserDao.getByIsActive(UserDao.java:64)

请问我在尝试中哪里弄错了。我已经研究过,但它并不适合我面临的问题。

最佳答案

您忘记为命名参数设置参数:更改 dao 方法,如:

public List getByIsActive(boolean isActive) {
        return  getSession().createQuery(
                "from User where isActive = :isActive").setParameter("isActive", isActive)
        .list();
    }

关于java - 由 : org. hibernate.QueryException 引起:未设置所有命名参数:[isActive] [from User where isActive = :isActive],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38971685/

相关文章:

java - 向 hibernate 映射文件添加属性

java - Hibernate 查询等效 sql

hive - 在 HIVE 中编写 if/else if/else if/else 的最佳方式是什么?

java - HQL相关: How to create an ailias to an object instead a field

Java Graphics Font - 如何确保文本保持在一行?

java - 从 RGBA 到十六进制

java - 在 JTabbedPane 中简单禁用 JPanel

java - JAAS有什么意义

java - 是否有使用 @Version 的可配置替代方案?

java - 如何在抛出异常时在 hibernate 中执行事务