我需要一个我的域名列表,我通过使用它来获取它们:
def domains = grailsApplication.getArtefacts("Domain")*.clazz
在我的每个域中都是一个构造函数,我想做这样的事情:
def item = new domains[0](object)
item.save()
基本上进行通用保存。
答案 0 :(得分:0)
我想出了一种调用构造函数的方法。我不知道这是否是最佳方式。示例代码如下:
//provides all Domain classes in your project in an ArrayList
//You can also use getArtefact("Domain", "classname")*.clazz to return a subset
def domains = grailsApplication.getArtefacts("Domain")*.clazz
def domain = domains[0].newInstance(object) //Whatever your constructor wants variable: "item" works as well
def domain.save()
感谢http://mrhaki.blogspot.ca/2010/06/groovy-goodness-create-class-instance.html