我正在使用 Artemis-odb 框架在 Java 中编码游戏(https://github.com/junkdog/artemis-odb)。
我想实例化一些实体(例如,建筑物和人/工人)。我还看到了框架的 EntityManager 类并尝试使用它。
这是我的问题:
- 我不想拥有一个扩展 EntityManager 并拥有所有“创建”方法的大型类,因为这将是一个糟糕的类 --> 太多的代码行,没有 lisibility,不,谢谢。
- 我尝试创建扩展 EntityManager 的多个类,但是每个类都有其“nextId”值(它可以知道要赋予新实体的 id)-> 我获得了具有相同 id 的多个实体。
- 如果我创建多个类并仅引用一个 EntityManager,则无法访问 EntityManager 的 create 方法,因为该方法受到保护。
- 我尝试的另一个解决方案是仅使用静态方法创建不同的类并引用 EntityManager。但是由于另一个原因(我省略了细节),我的 EntityManagers 需要具有非静态方法。
你有什么可行的解决方案吗?目前没有太多关于这个框架的文档,所以它有点复杂!
谢谢,