5

我是 Grails 的新手,我有疑问。可以说我已Datasource.groovy配置为mysql数据库。一切正常,我的 grails 应用程序正在运行。

在控制器中,如果我想添加/修改我设置的数据库,我该DataSource.groovy怎么做?

我再次需要在每个控制器中做这样的事情:

def db = Sql.newInstance(
                    'jdbc:mysql://*****',
                    'root',
                    '',
                    'com.mysql.jdbc.Driver'
                )

为了获得我指向DataSource.groovy文件的数据库实例?

是否有任何最佳做法可以做到这一点?

4

1 回答 1

5

你应该能够做到这一点(我建议这是在服务而不是控制器中完成,因为它会使你的控制器更干净,你的代码更容易遵循)

import groovy.sql.Sql 

class DataSourceAccessingService {
  def datasource

  def runSomeQuery( String sql ) {
    def sql = new Sql( datasource )
    ...
  }
}
于 2012-07-06T07:23:35.653 回答