java - 如何使用 Hibernate 搜索来搜索多个字段?
问题描述
我正在尝试找到一种使用 Hibernate 搜索在我的数据库中搜索项目的方法。
我所拥有的是一个具有多个字段的实体,并且我要搜索的字段已被索引。我希望能够搜索项目fieldA==valueA && fieldB==valueB
(如果用户选择更多搜索条件,可能会在此搜索中添加更多字段)。
我什至不确定我应该使用 Hibernate 搜索还是只构建一个自定义查询。
解决方案
你试过hql查询吗?
Query q = s.createQuery("from foo Foo as foo where foo.name=:name and foo.size=:size");
q.setProperties(fooBean); // fooBean has getName() and getSize()
List foos = q.list();
来源:http ://docs.jboss.org/hibernate/core/3.5/reference/en/html/queryhql.html
编辑:
参见用于搜索不同字段的 Lucene 示例 https://stackoverflow.com/a/16009337/7141562
无论如何,我会继续使用 JPA/Hibernate 模式,因为它看起来更简单、更清晰的解决方案。
推荐阅读
- javascript - 我需要点击 iframe 视频
- azure - Azure 服务总线 System.UnauthorizedAccessException
- javascript - 如何获取 SVG 折线元素的高度和宽度?
- android - 如何检测Android中是否有任何应用程序请求麦克风?
- javascript - 如何检查窗口是否从 window.open() 实例化
- apache-kafka - 在所有代理关闭后,kafka 没有将副本分配为领导者
- c# - CMake 中构建后自定义命令中的 Glob 文件
- php - 如何在我的数组编辑中调用这个变量
- angular - Datatable.net 分页按钮单击的回调函数
- python - python中的问题,同时结合2个文本文件并将它们总结成一个新的文本文件