【问题标题】:Extremely weird hibernate search issue非常奇怪的休眠搜索问题
【发布时间】:2022-09-23 08:14:39
【问题描述】:

我很难考虑如何提供可重现的示例,因为有很多活动部件。基础是,我有一个使用 JpaRepository 的 Spring Boot 应用程序,我试图在一列中搜索带有字符串 A40-CN0249RN2A 的记录,但无法获得搜索结果。以下是我将抛出的一些数据点,以显示我去过的地方:

  • 使用 SpringBoot 2
  • 使用 JpaRepository
  • 使用休眠
  • 使用 Postgres
  • 我已确认该列有数据
  • 我已在 findAll() 搜索中确认数据出现在结果实体中
  • 我已经记录了查询和绑定变量,并确认 sql 在 sql 客户端中获得了结果
  • 一篇 SO 文章告诉我破折号是可疑的。关于破折号:
    • 我可以用破折号在不同的列上搜索结果
    • 我已确认我可以搜索的破折号和我不能搜索的破折号是相同的 ascii 值
    • 我已将破折号替换为 _ 通配符,但仍无法获得结果
    • 我无法使用A40-CN0249RN2A 获得结果,但我可以使用A40--CN0249RN2A- 在列上获得结果

所以迷失了方向。提前感谢您能给我的任何帮助。

  • 该值是否可能存在前导/尾随空格?
  • @PaulT。不,恐怕我检查了字符长度 - 另外,如果它是 db 列中的尾随空格,则 url 搜索词不会有它。 :(

标签: sql postgresql hibernate spring-data-jpa spring-data


【解决方案1】:

在这上面花费了令人尴尬的 2 天,从我的描述中无法找到:

Spring Data 分页从第 0 页开始,而不是从第 1 页开始。仅此,您就会得到很多非常多样化的难以追踪的错误!

【讨论】:

    猜你喜欢
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 2021-08-26
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多