我在通过Hibernate Search从数据库获取确切值时遇到问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

我在通过Hibernate Search从数据库获取确切值时遇到问题

小六码奴 2019-10-09 20:17:56 299

想要通过Hibernate搜索得到表的字段,哪些字段等于搜索参数的值

我有一个搜索的域 @Field(name = "field", analyzer = @Analyzer(definition = "whitespaceAnalyzer")) private String field;

我通过创建这个查询来搜索它 queryBuilder.keyword () .onField(“场”).matching(“价值”).createQuery ()

@Field(name = "field", analyzer = analyzy . no)

它可以运行,但我想让@Field以这种方式注释,并通过相等运算符搜索字段,在我的例子中我怎么做呢。

Java 数据库连接 数据库
分享到
取消 提交回答
全部回答(1)
  • 一码平川MACHEL
    2019-10-09 20:18:29

    你可以利用

    javax.persistence.criteria.CriteriaBuilder

    CriteriaBuilder criteriaBuilder = entityDAO.getCriteriaBuilder();
    CriteriaQuery<?> criteriaQuery = criteriaBuilder.createQuery(Field_className.class);
    
    Root<Field_className> entity = criteriaQuery.from(Field_className.class);
    criteriaQuery.where(criteriaBuilder.equal(entity.get("field"),identifier));
    Field_className = (Field_className)entityDAO.createQuery(criteriaQuery).getSingleResult();
    

    请注意Field_className用你的className 替换

    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题