Hibernate Search 6.0.0.Alpha3 已发布 ,这是仍处于开发中的 6.0 分支的第三个版本。该版本主要增加了对更多字段类型和谓词的支持,并带来更一致、更简洁的 API。
如果希望深入了解新的 Hibernate Search 6,建议阅读参考文档包含的 入门指南 。另外,Hibernate Search 6 仍在开发中,其 API 与 Search 5 有很大的不同。
有关此分支当前状态的更多信息,请参阅 hibernate.org 上 Search 6 的专用页面 。
有关迁移的更多信息,请参阅 迁移指南 。
与 Quarkus 的集成:这是一个框架和工具集,旨在显著改善 Java 应用程序的启动时间和内存使用。开发团队表示 一直在努力 将 Quarkus 集成到 Hibernate Search 中,并且很快就会发布一个实验性的 Quarkus Extension。
大多数基本 Java 类型现在可用于索引:在 HSEARCH-3047 和 HSEARCH-3503 中 ,恢复了对大多数基本 Java 类型进行索引的功能。
现在支持以下类型:
java.lang.String
java.lang.Character
, char
java.lang.Byte
, byte
java.lang.Short
, short
java.lang.Integer
, int
java.lang.Long
, long
java.lang.Double
, double
java.lang.Float
, float
java.lang.Boolean
, boolean
java.net.URI
java.net.URL
java.time.Instant
java.time.LocalDate
java.time.LocalTime
java.time.LocalDateTime
java.time.OffsetDateTime
java.time.OffsetTime
java.time.ZonedDateTime
java.time.ZoneId
java.time.ZoneOffset
java.time.Period
java.time.Duration
java.time.Year
java.time.YearMonth
java.time.MonthDay
java.util.UUID
java.util.Calendar
java.util.Date
java.sql.Timestamp
java.sql.Date
java.sql.Time
值得注意的是,不支持的类型包括
BigDecimal
和 BigInteger
。
有关更多信息,请参阅文档:
可索引类型
文档ID类型
Hibernate Search 的作用是对数据库中的数据进行检索。它是Hibernate对著名的全文检索系统 Lucene的一个集成方案,作用在于对数据表中某些内容庞大的字段(如声明为 text 的字段)建立全文索引,这样通过 Hibernate Search 就可以对这些字段进行全文检索后获得相应的 POJO,从而加快了对内容庞大字段进行模糊搜索的速度(sql 语句中 like 匹配)。
源码下载: https://github.com/hibernate/hibernate-search/releases