【问题标题】:How to use Spring Data JDBC without annotations?如何在没有注释的情况下使用 Spring Data JDBC?
【发布时间】:2020-06-08 15:31:45
【问题描述】:

我正在开发一个新项目,使用干净架构等概念,保护我的模型和业务规则免受外部依赖项和框架的影响。另外,我不喜欢使用传统的 ORM 库(如 JPA/Hibernate),而是选择使用普通 jdbc(通过 spring jdbctemplate)。

进展顺利,但我已经厌倦了在基本的 crud reposity 上为我的所有域类编写 20 倍几乎相同的查询。所以,我看一下 Spring Data JDBC,但似乎有必要在我的域类上添加注释以使其正常工作。我真的不想这样做,首先是因为我想让我的域从任何依赖项中尽可能清洁,其次因为这是我在 JPA 上真正不喜欢的(许多)事情之一。

我想知道,存储库只需要两件事:行映射器定义和 PK 定义(两者都可以在存储库本身定义)避免完全使用注释。

那么,我的问题是有什么方法可以在没有注释的情况下使用 Spring Data JDBC?

【问题讨论】:

  • 另外,我在 JPA/Hibernate 上最不喜欢的地方是 DTO 和转换服务的使用,所以这里不是一个选项。

标签: java spring kotlin jdbc spring-data-jdbc


【解决方案1】:

不,没有简单的方法可以使用 Spring Data JDBC (https://spring.io/projects/spring-data-jdbc)。

您可以做的是替换那些执行注释解释的类(RelationalPersistentEntityImplBasicRelationalPersistentProperty),并用从其他地方获取信息的东西替换它们。

有一个不同的框架可能适合这个法案,它也被命名为 Spring Data JDBC ?‍♀️ https://github.com/nurkiewicz/spring-data-jdbc-repository

它似乎与您正在寻找的内容非常接近,但它的最后一次提交是在 6 年前并已存档在 Github 上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-04
    • 2016-12-04
    • 2014-08-21
    • 2022-08-14
    • 1970-01-01
    • 1970-01-01
    • 2015-08-03
    • 2017-10-09
    相关资源
    最近更新 更多