crane4j icon indicating copy to clipboard operation
crane4j copied to clipboard

提供 JPA 扩展,支持基于仓储接口提供用于根据外检查询表数据的容器

Open Createsequence opened this issue 2 years ago • 0 comments

提供 JPA 扩展,支持基于仓储接口自动提供用于根据外检查询表数据的容器,就像 #8 提供的 MybatisPlus 适配一样.

扩展模块将会自动提供一个独立的 ContainerProvider,类似 MybatisPlus 扩展中的 MpMethodContainerPrivoder,该容器提供者将在项目启动后扫描项目中的所有 Repository 接口,并且根据情况自动适配并注册根据 id / 外键查询表数据源的容器,然后用户只需要在配置中指定了 ContainerPrivoder 后,即可方便的查询表数据源并且填充。

比如,我们现在有一个 Foo 类和它对应的仓储接口 FooRepository,则参照 mp 扩展的适用方式,则有:

public class Foo {
    @Assemble(
        namespace = "container('fooRepository')",
        containerPrivoder = "jpaMethodContainerPrivoder"
    )
    private Integer id;
}

上述示例表示,借助 JpaMethodContainerPrivoder ,从 Spring 上下文中获得 FooRepository 并调用器 selectByIds(或其他合适的默认方法)查询数据。

Createsequence avatar Feb 14 '23 13:02 Createsequence