返回介绍

第 3 章 使用 Querydsl 实现类型安全的查询

发布于 2025-04-22 19:57:17 字数 590 浏览 0 评论 0 收藏

编写访问数据的查询通常会使用 Java 的字符串(String)来完成。对于 JDBC 来说,可供选择的查询语言就是 SQL,而对于 Hibernate/JPA 来说就是 HQL/JPQL。使用简单的字符串来定义查询的功能是很强大的,但也易于出错,因为很容易引入拼写错误。除此之外,它与实际的查询源或底层存储很少有关联,所以列引用(在 JDBC 的场景下)或属性引用(在 HQL/JPQL 上下文中)在维护方面会成为一种负担,这是因为表或对象模型的变化并不能很容易地映射到查询之中。

Querydsl 项目( http://www.querydsl.com )试图解决这样的问题,它提供了一个非常流畅的 API 来定义查询。这个 API 衍生于实际的表或对象模型,但同时又是与存储和模型高度无关的,所以它允许为各种存储类型创建和使用查询 API。它目前支持 JPA、Hibernate、JDO、原生的 JDBC、Lucene、Hibernate Search 以及 MongoDB。功能的多样性是 Spring Data 集成 Querydsl 的主要原因,因为 Spring Data 也集成了多种类型的存储。下面将会介绍 Querydsl 项目以及它的基本理念。在本书后面各种存储类型相关的章节中,我们还会介绍它对这些存储的支持。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。