我想根据应用程序启动期间传递的参数连接到其他数据库,我打算传递类似的参数

grails run-app -Ddbsource.name=db_one

因此,在这种情况下,Datasource.groovy应该看起来像这样
dataSource {
    pooled = true
    driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
    dialect = "org.hibernate.dialect.SQLServerDialect"
    dbCreate = "update"
    username = "username"
    password = "password"
    url = "jdbc:sqlserver://DEV-SVR;databaseName=db_one"
}

它也适用于WAR,我打算以这种方式传递参数
grails war -Ddbsource.name=db_one

反正有实现这个目标的方法吗?

最佳答案

尝试这样。

命令:

grails run-app -Ddbname=db_one

码:
dataSource {
    pooled = true
    driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
    dialect = "org.hibernate.dialect.SQLServerDialect"
    dbCreate = "update"
    username = "username"
    password = "password"
    url = "jdbc:sqlserver://DEV-SVR;databaseName=${System.getenv('dbname')}"
}

关于grails - 根据传递的参数连接到数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36882220/

10-10 16:21