使用Spring Data JPA实施策略模式服务层

问题描述

对于数据库中的许多模块,我们都有以下数据库结构。

db表A是主表,该表有多个扩展名(B,C,D等),它们没有自己的主键,但引用A的主键。我们使用JPA @Inheritence联接表方法来管理这些。因此,A的父实体和扩展A的子实体。

我们还为所有实施实体创建了多个jpa存储库。

用户发送请求时,根据请求中的某些字段,我们必须确定正确的实现并对该特定存储库执行CRUD操作。

为了使其具有通用性和动态性,我创建了一个策略工厂,该工厂接受用户输入以标识正确的实现,并返回包含特定存储库的特定策略。

问题是我必须在每次调用服务类方法时执行此操作,以识别正确的策略。我觉得这个设计有缺陷。你能建议一个更好的设计吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)