是否可以通过编程方式(在运行时)而不是通过注释来定义 PlanningVariables?
Is it possible to define PlanningVariables programmatically (at runtime) instead of through annotations?
老实说,我没有尝试太多,因为我一定是完全错过(或未能识别)文档中的相关部分。
这就是我问的原因:
我有一个针对给定优化的工作域模型。我可以在更改 PlanningVariable 时使用域进行非常相似的优化。我不想拥有 2 个几乎相同的域,它们仅在 PlanningVariable 上有所不同,我希望只有一个域并能够按需切换 PlanningVariable。
这有意义吗?
恐怕还没有这样的 API 允许这样做(有一个 jira)。但我看到你减少代码重复的动机。
我只能建议尽可能多地共享域 类。在这种情况下,如果您说域仅在 PlanningVariable 上不同,则需要有单独的 @PlanningEntity 和 @PlanningSolution 类。更进一步,它们可能有一个共同的祖先来进一步减少重复。
在 solverConfig.xml
(2 个 SolverFactories 中的每一个)中,您可以使用 <entityClass>
和 <solutionClass>
来使用其中一个。
老实说,我没有尝试太多,因为我一定是完全错过(或未能识别)文档中的相关部分。
这就是我问的原因:
我有一个针对给定优化的工作域模型。我可以在更改 PlanningVariable 时使用域进行非常相似的优化。我不想拥有 2 个几乎相同的域,它们仅在 PlanningVariable 上有所不同,我希望只有一个域并能够按需切换 PlanningVariable。
这有意义吗?
恐怕还没有这样的 API 允许这样做(有一个 jira)。但我看到你减少代码重复的动机。 我只能建议尽可能多地共享域 类。在这种情况下,如果您说域仅在 PlanningVariable 上不同,则需要有单独的 @PlanningEntity 和 @PlanningSolution 类。更进一步,它们可能有一个共同的祖先来进一步减少重复。
在 solverConfig.xml
(2 个 SolverFactories 中的每一个)中,您可以使用 <entityClass>
和 <solutionClass>
来使用其中一个。