当前位置: 首页 > 面试题库 >

子树异常休眠和意外结束

邢焱
2023-03-14
问题内容

我是Hibernate的新手。

我有一个ItemPOJO,其中包含一个Set<String>标签。标签包含在该Item表的另一个数据库表中,因此我进行了连接以填充pojo。

我正在尝试从我的“ Java持久性Java持久性”一书中运行一个简单的示例查询from Item item where 'hello' member of item.labels。只是出于某种原因,我得到了

 `org.hibernate.hql.ast.QuerySyntaxException: unexpected end of subtree[from /*qualified class path*/.Item item where 'hello' member of item.labels]`

是什么导致此问题?

这是我的POJO:

public class Item
       private int uuid;
       private Set<String>labels = new HashSet<String>();

       @Id
       public int getUuid(){
          return uuid; 
       }

       @CollectionOfElements
       @JoinTable(name="labels", joinColumns=@JoinColumn(name="uuid"))
       @Column(name="label")
       public Set<String> getLabels(){
            return labels;
       }
 }

问题答案:

对于基元集合,应使用HQL查询,如下所示:

from Item item join item.labels lbls where 'hello' in (lbls)

PS:因为“标签”是OneToMany或ManyToMany变体,所以需要“ join”,因为“ lbls”是一个集合,所以需要括号



 类似资料:
  • 问题内容: 我是Hibernate的新手。 我有一个POJO,其中包含一个标签。标签包含在该表的另一个数据库表中,因此我进行了连接以填充pojo。 我正在尝试从我的《 Java Persistance with Hibernate》一书中运行一个简单的示例查询。只是出于某种原因,我得到了 是什么导致此问题? 这是我的POJO: 问题答案: 对于基元集合,应使用HQL查询,如下所示: PS:因为“标

  • 问题内容: 我有一个“复杂”的问题。 我正在使用Hibernate / JPA与数据库进行事务。 我不是DBA,客户端使用了我的应用程序,即RESTful Web服务。我的问题是数据库已更改(不是很频繁,但仍在更改)。另外,客户端并不总是尊重我的应用程序的输入(长度,类型等)。发生这种情况时,Hibernate会引发异常。异常很难翻译和从日志中读取,因为它具有嵌套的异常并且由很多文本组成:就像我说

  • 问题内容: 我在注释和上遇到了问题。在Hibernate中运行代码时,我得到: 引起原因:org.hibernate.PropertyAccessException:无法通过com.test.entities.EmployeeId.serverId的反射设置器设置字段值 但是,让我们从头开始…我有一个实体的复合主键,它由指向其他两个实体(和)的外键组成。为了设计简洁,我在Employee实体中使用

  • 问题内容: 从Weblogic 11c切换到Weblogic 12c后,出现此异常: 我发现了有关该主题的其他问题,但是所有解决方案都是关于错误的库的(Vaadin 7-Bean Validation )。我认为我的hibernate-validator与bean验证器库匹配。这是我在WEB-INF / lib中拥有的: 可能是由其他依赖性引起的吗? 编辑 我目前在我的weblogic-appli

  • 问题内容: 尝试将结果集强制转换为映射类时,我收到了hibernate类的类强制转换异常…我能够查看返回的结果集中的数据…但是它以Object []的形式返回我可以将Object []设置为List …我可以正确地进行hibernate映射吗?我从查询中获取了正确的数据,但映射不正确… 映射 映射类 参加班 主要 问题答案: 对于测试,我建议您在产生类强制转换异常的语句周围放置一个try-catc

  • 问题内容: 我正在使用hibernate和hql在Java代码中进行查询。但是我有这样一个例外: 我不明白“ 0”的含义。以下是一些带有示例的细节: 我有几个表加入hql。表格如下: 类: hql: 查询: 结果是对象“ A”的列表,其中包含收集的长度和单位。我不明白为什么会遇到这个例外。请给一些建议。 更新: 我编写了一个ResultTransformer并输出所有“别名”以查看问题: 似乎它还