编写Grails应用程序脚本

时间:2009-07-06 03:18:32

标签: grails groovy

我需要为Grails应用程序编写一个脚本来修改持久数据,向用户发送电子邮件等。

虽然Grails没有特定的内容 - 我可以使用JDBC,JavaMail完成这些任务 - 我希望有更好的方法。具体来说,如果我可以编写一个可以访问Spring bean的Groovy脚本,以及在Grails应用程序中定义的域类,那么我似乎可以节省很多时间。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

根据您的问题,我假设您需要运行一次性脚本,而不是grails应用程序中的某些功能。为此,您可以编写一个groovy脚本并在grails控制台中运行它:

grails prod console

在控制台中,您可以访问Domain类(和GORM)。然后,您可以将邮件/ activation / commons-email jar转储到lib目录中,或者安装grails Mail plugin

答案 1 :(得分:1)

另一种可能性是创建一个gant脚本。例如,可以使用以下命令创建HelloWorld.groovy脚本:

grails create-script hello-world

在此脚本中,您可以通过appCtx变量访问spring上下文,并通过grailsApp变量访问GrailsApplication实例。您可以使用后者使用

加载用户域类
def artistClass = grailsApp.classLoader.loadClass("com.example.User")

然后您可以通常的方式调用GORM方法:

artistClass.list()