6

私は開発段階にあり、インメモリ DB を使用して、Grails アプリケーションの起動時にデータをロードしようとしています。私の質問は、起動時に実行できる SQL 挿入ステートメントを作成/構成する方法はありますか?

4

1 に答える 1

10

これは BootStrap.groovy で行うことができます。dataSourceBean に依存性注入を追加すると、それをgroovy.sql.Sqlインスタンスで使用して挿入を行うことができます。

import groovy.sql.Sql

class BootStrap {

   def dataSource

   def init = { servletContext ->
      def sql = new Sql(dataSource)
      sql.executeUpdate(
         'insert into some_table(foo, bar) values(?, ?)',
         ['x', 'y'])
   }
}

ただし、これらがドメイン クラスで管理されるテーブルであると仮定すると、おそらく GORM を使用した方がよいでしょう。たとえば、次のようなものを実行しますnew Book(author: 'me', title: 'some title').save()

于 2013-01-22T07:16:12.800 に答える