GORM动态获取方法

YAT*_*YAT -1 grails

我问自己是否可以减少我的代码

User.get(Long.valueOf(params.userid))
Run Code Online (Sandbox Code Playgroud)

User.get(params.userid)
Run Code Online (Sandbox Code Playgroud)

所以参数是字符串,DomainClasses的ID大多是Longs,所以我的想法是覆盖get方法并动态地从domainClass中找出ID的数据类型,并尝试在必要时强制转换给定的参数.

仅供参考我使用的是Grails 2.5.4

有没有机会这样做?

inj*_*eer 5

自从Grails 2.1或类似的以来,它一直在这样工作.该get()方法可以直接调用:

def inst = MyDomain.get params.id
Run Code Online (Sandbox Code Playgroud)

String -> Long自动执行转换