代码之家  ›  专栏  ›  技术社区  ›  egaga

搜索结果是由于休眠搜索中的字段所致

  •  1
  • egaga  · 技术社区  · 15 年前

    我有一个休眠搜索,从一个对象的许多字段中搜索。是否可以知道哪些字段与每个结果对象的结果匹配?

    1 回复  |  直到 9 年前
        1
  •  4
  •   Hardy    15 年前

    不是开箱即用。有关哪些字段匹配的一些信息可以从Lucene解释对象中提取,您可以通过Hibernate搜索中的投影来检索该解释对象。问题是,该对象设计用于对搜索结果进行目视检查,而不是作为编程接口。您可以解析字符串输出,但在Lucene的较新版本中,格式可能会更改。

    另一种选择是迭代匹配的文档,然后手动(例如通过正则表达式)尝试找出匹配的字段。这也相当棘手,因为根据Lucene查询的不同,可能很难找到正则表达式。

    这取决于你具体的用例。你需要这些信息是为了什么?也许还有另一种解决方案。