SnakeYaml 通过静态方法创建对象



我正在尝试将snakeyaml与Play Framework 2一起使用来创建Ebean对象

它适用于

!!models.User
  name: Leon

但我想引用所有准备好的持久项目。 这意味着我不想创建新对象。

因此,如果我做这样的事情来尝试引用已经创建的组

!!models.Group &mygroup
  id: 1
!!models.User
  group: *mygroup

它会抱怨 id: 1 的组已经存在

Ebean 有一个方法EbeanServer.getReference(type, id)可以从模型类上的静态查找方法访问

Group.find.ref(1)

我希望能够做这样的事情(但现在不起作用)

!!models.Group.find.ref(1) &mygroup

如何从 snakeyaml 调用此静态方法来获取引用而不是新对象?

为了解决这个问题,我必须创建一个使用Ebean.getServer("default").getReference(models.User.class, 1)的自定义 Yaml 构造函数

https://gist.github.com/4326933

希望它能帮助某人!

最新更新