如何编辑Grails应用的web.xml文件?

先使用命令:“grails install-template”安装Template,之后在AppHome/src/templates/war/目录下找到web.xml,修改之。



请解释一下外部配置。它有什么好处?

grails-app/conf目录下的默认配置文件Config.groovy在大多数情况下就够用了,但是有可能你希望在应用之外维护配置信息。比如,数据库链接信息,以避免配置修改时需要重新打包WAR。为了支持这些个部署场景,Grails提供了外部部署。你可以在Config.groovy文件中指定外部配置文件的位置,比如:


1	grails.config.locations = [ "classpath:${appName}-config.properties",
2       "classpath:${appName}-config.groovy",
3       "file:${userHome}/.grails/${appName}-config.properties",
4       "file:${userHome}/.grails/${appName}-config.groovy"]

请解释一下Config.groovy和BuildConfig.groovy文件的区别。

Config.groovy是主配置文件,BuildConfig.groovy则侧重构建环境。


请解释一下Bootstrap.groovy的作用?

在Bootstrap.groovy中,可以定义应用程序启动和停止时执行的代码。


在config.groovy文件中有名为layer1.prop1的参数。请问,在Controller中如何访问它?在Service中呢?

访问方式一样,可采用以下任意一种方法:

view source
print ?
1	grailsApplication.config.layer1.prop1
2	//或者
3	ConfigurationHolder.config.layer1.prop1


如何查看Grails的内置HSQL数据库?

可以将代码:

1	org.hsqldb.util.DatabaseManager.main()

在应用内的任何地方或者Grails Console中,运行上述代码会启动HSQLDB的Console连接界面。在这个界面中,将URL属性值jdbc:hsqldb:mem:* 中的“*”更换成devDB或者你自己定义的数据库名,如“jdbc:hsqldb:mem:devDB”,之后单击OK,就能够看到该数据库中的表结构了。


或者直接使用:


1	org.hsqldb.util.DatabaseManagerSwing.main( ['--url','jdbc:hsqldb:mem:devDB'] as String[] )

Grails如何使用多个数据库?

使用Datasources插件。