6.4. 指定 OptaPlanner 域访问
默认情况下,OptaPlanner 使用反映访问您的域。与直接访问相比,反映可靠,但速度较慢。或者,您可以将 OptaPlanner 配置为使用 Gizmo 访问您的域,这将生成字节码,直接访问域的字段和方法,而无需反映。但是,此方法有以下限制:
- planning 注解只能位于公共字段和公共 getters 上。
-
io.quarkus.gizmo:gizmo必须位于 classpath 上。
注意
当您将 OptaPlanner 与 Quarkus 搭配使用时,这些限制不适用,因为 Gizmo 是默认的域访问类型。
流程
要使用 Quarkus 之外的 Gizmo,请在 solver 配置中设置 domainAccessType :
<solver>
<domainAccessType>GIZMO</domainAccessType>
</solver>