根据文档,Grails 控制器只是一个在名称后附加“Controller”并保存在grails-app/controllers/
. 此类中最简单的是:
package some.package
class FooController {
def index = {}
}
当 Grails 应用程序运行时,该控制器将继承一些标准方法,如getParams
和getSession
。从随附的屏幕截图中,我可以看到这些是通过添加的groovy.lang.ExpandoMetaClass
。我没有看到这是如何发生的。控制器不实现任何接口或扩展任何抽象。这些方法从何而来?