领先一步
VMware 提供培训和认证,助您加速进步。
了解更多我谨代表团队和所有贡献者,高兴地宣布下一代 Spring Data 的第六个也是最后一个里程碑版本已发布。该里程碑版本继续提供新功能、改进和依赖项升级。
Spring Data MongoDB 现在与 MongoDB Java Driver 对齐,不再为 UUID 值提供默认表示形式。相反,您需要通过驱动程序设置显式配置所需的表示形式。
我们也不再为BigInteger提供默认配置值,并根据MongoDB的默认编解码器将BigDecimal的默认值恢复为Decimal128。这是一种更安全的方法,可以防止您的应用程序在升级到新的主要版本时不小心切换表示形式。请确保通过MongoCustomConversions配置大数字的格式。
将BigDecimal表示形式设置为STRING或DECIMAL128允许您控制BigDecimal和BigInteger值的默认表示形式。通过@Field(targetType = FieldType.DECIMAL128)或@Field(targetType = FieldType.STRING)进行的任何显式类型提示不受影响。
此里程碑版本附带了对 Spring Data JDBC 和 Spring Data for Apache Cassandra 仓库的 AOT 支持。这包括对查询派生、声明式查询和命名查询的支持。
启用 AOT 处理时,Spring Data 会在构建时将生成的属性访问器和实体实例化器包含在最终的 AOT 包中。我们现在会在 AOT 优化期间捕获生成的类,而不是在运行时生成这些类。这可以提高启动时间并减少内存消耗。此外,生成的属性访问器和实体实例化器现在可在 GraalVM 本机映像中使用。
我们很高兴地宣布,Spring Data Commons 和 Spring Data REST 模块现在支持 Jackson 3。虽然 Spring Data Commons 附带了已弃用的 Jackson 2 类,并且仍可使用 Jackson 2 运行,但 Spring Data REST 需要 Jackson 3,因为 Spring Data REST 在某种意义上是对 Jackson 的巨大抽象。
Spring Data Neo4j 现在支持在仓库级别基于向量索引的向量搜索方法。仓库方法必须使用@VectorSearch(indexName,numberOfNodes)注解才能利用 Neo4j 的向量搜索功能。向量搜索可以与已有的搜索函数(例如findByName)结合使用,并且将在进行名称过滤之前调用向量搜索。Vector参数是使查询工作的强制参数,但它也可以通过Score截止值进行增强,以忽略低质量结果。
interface VectorSearchRepository extends CrudRepository<EntityWithVector, String> {
@VectorSearch(indexName = "entityIndex", numberOfNodes = 2)
SearchResults<EntityWithVector> findAllBy(Vector searchVector);
@VectorSearch(indexName = "entityIndex", numberOfNodes = 2)
SearchResult<EntityWithVector> findBy(Vector searchVector, Score score);
}
有关 Spring Data Neo4j 向量搜索的更多详细信息,请参阅参考文档。
此里程碑是进入 10 月发布候选阶段之前的最后一个里程碑,随后将在 11 月全面发布。我们鼓励您试用新功能和改进,并提供反馈,以帮助我们使 Spring Data 变得更好。
4.0 M6 - Javadoc - 文档 - 更新日志4.0 M6 - Javadoc - 文档 - 更新日志8.0 M6 - Javadoc - 文档 - 更新日志5.0 M6 - Javadoc - 文档 - 更新日志5.0 M6 - Javadoc - 文档 - 更新日志4.0 M6 - Javadoc - 文档 - 更新日志4.0 M6 - Javadoc - 文档 - 更新日志5.0 M6 - Javadoc - 文档 - 更新日志4.0 M6 - Javadoc - 文档 - 更新日志6.0 M6 - Javadoc - 文档 - 更新日志6.0 M6 - Javadoc - 文档 - 更新日志4.0 M6 - Javadoc - 文档 - 更新日志