如何在Cron中使用Grails在Grails中执行Groovy脚本

时间:2016-10-08 19:33:43

标签: grails groovy

我有一个Grails应用程序,但我需要执行Cron的一些脚本。此脚本必须可以通过Gorm访问数据库。 可以制作grails create-script cron-script。但是如何将它变成战争或jar文件?

2 个答案:

答案 0 :(得分:2)

在Grails应用程序中定期执行脚本的最常用方法是通过Quartz插件。从cron工作中访问GORM并不容易。

答案 1 :(得分:0)

如果安装了Console Plugin,可以使用cron执行的shell脚本中的curl调用它。做这样的事情:

#/bin/bash

import groovy.sql.Sql
def dataSource = ctx.dataSource
def sql = new Sql(dataSource)

curl -i -H "Content-type: application/x-www-form-urlencoded" -c /tmp/cookies.txt -X POST www.yoursite.com/j_spring_security_check -d "j_username=admin@yoursite.com&j_password=verysecretpassword"

curl -i -b /tmp/cookies.txt -d 'code=
  sql.executeUpdate("insert into yourtable (test) values (42)")
' www.yoursite.com/console/execute