我试图利用 groovy 比 java 更动态的事实。我想要一个代码块
TypeA type = //do something to build an object
TypeA dbType = TypeA.findBySomethingAndSomething(something, somethingelse)
if(dbType != null)
type.id = dbType.id
type.save()
但这适用于支持相同 findBySomethingAndSomething 方法的多个对象。
是否可以说
def type = //do something to build an object
def dbType = type.findBySomethingAndSomething(type.identifier, type.otheridentifier)
if(dbType != null)
type.id = dbType.id
type.save()
有没有“更好”的方法来做到这一点?我试图避免一个大的 switch 语句或 if / else 系列对每种类型做本质上相同的事情。