这是执行时grails框架的起点。?

时间:2012-09-21 19:00:46

标签: grails

首先,我是grails以及网站开发的新手。我开始了grails项目和学习。 我很清楚像这样的Grails概念,比如Domain类,控制器,视图,敏捷开发。

执行grails run-app命令时,grails在框架中开始执行并运行(如Java中的main()方法)?

哪个是我的项目中第一个来自grails框架的入口域或控制器或视图或main.gsp?

3 个答案:

答案 0 :(得分:1)

  1. 服务器启动时,执行Bootstrap.groovy
  2. 要收听每个请求,您可能需要定义自己的filter
  3. 但是,每个请求的开头都是org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet

答案 1 :(得分:1)

当请求进入时,grails确定控制器和操作(基于URL和您指定的任何UrlMappings)并调用它。因此,从您的应用程序代码的角度来看,起点就是您的行动之一。

例如:

如果用户请求http://abc.com/book/list,其中abc.com就是您的网站,则def list()中的方法BookController.groovy就是起点。

在内部,grails在调用控制器的操作之前调用AppFilters.groovy中的每个闭包(以及由您或您正在使用的插件定义的其他过滤器)。如果您正在开发一个非常简单的应用程序,那些并不重要。

答案 2 :(得分:0)

Grails集成了强大的构建系统Gant,它是围绕Apache Ant的Groovy包装器。

运行命令:Grails [commad-name],

Grails在以下目录中搜索要执行的Gant脚本:

USER_HOME / .grails / scripts
PROJECT_HOME / src / main / scripts /
PROJECT_HOME / plugins / * / scripts
GRAILS_HOME / scripts

当您执行 Grails run-app 命令时,它将从上述路径执行RunApp.groovy文件。这些是常规文件,一旦您查看文件,您将了解其中的代码。