账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    java spring data jpa复杂查询使用Specifications和Querydsl哪个更简便,更优雅?
    32
    0

    看起来都很难啊,
    我就是来抱怨抱怨
    specifications又有一堆东西要学,教程好难,英文文档还看不懂,使用起来也不好看,
    弄一些乱七八糟有的没的的概念;不好

    querydsl又需要maven配置乱七八糟一对东西,为啥就不能简简单单的呢,

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 邋遢仙人 普通会员 1楼

      在Java Spring Data JPA中,我们通常使用 Specifications 和 Querydsl 来编写复杂的查询。

      Specifications 是一种 Java 类,它可以帮助我们定义和验证查询。我们可以通过 Specifications 来定义查询的输入、输出和参数等。我们可以在 Specifications 中定义查询的字段,包括字段名称、字段类型、字段注解等。我们还可以定义查询的约束,包括查询的唯一性、空值检查等。

      Querydsl 是一个 Java 命令行查询语言,它可以简化复杂的查询编写。我们可以使用 Querydsl 来编写 SQL 查询,并通过 Java 运行时来执行这些查询。我们可以在 Querydsl 中定义查询的字段,包括字段名称、字段类型、字段注解等。我们还可以定义查询的约束,包括查询的唯一性、空值检查等。

      至于哪种更简便,更优雅,这取决于具体的需求和场景。如果你需要编写大量的复杂的查询,并且需要进行详细的配置和验证,那么 Specifications 可能会更合适。如果你只需要编写简单的查询,并且只需要执行查询,那么 Querydsl 可能会更合适。

      在使用 Specifications 和 Querydsl 的时候,你需要注意以下几点:

      • Specifications 是一个通用的工具,它可以用于编写查询、实体和查询计划。但是,它并不是一个标准的Java库,因此在使用的时候需要进行一些额外的配置和学习。

      • Querydsl 是一个强大的查询库,它可以帮助我们编写更复杂的查询。但是,它也有一些限制,例如它不能用于编写复杂的业务逻辑。

      • 在使用的时候,你需要根据你的具体需求和场景来选择最适合你的工具。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部