在 Grails 中调用存储过程(逐步)
Call Stored Procedure in Grails (Step by step)
谁能告诉我如何从存在于用户定义路径中的 Grails 调用存储过程。
为此,您可以使用 Groovy Sql
。
要使用 Groovy SQL:
import groovy.sql.Sql
- 使用
def dataSource
或 def sessionFactory
请求对数据源的引用以进行交易
- 使用
def sql = new Sql(dataSource)
或 def sql = new Sql(sessionFactory.currentSession.connection())
创建一个 Sql 对象
- 根据需要使用GroovySQL
Grails 将自动管理与数据源的连接。
注意:dataSource
和 sessionFactory
是您必须在 pojo/bean class.
中注入的 bean
所以要执行 sql 写在你的文件上的代码:
String sqlFilePath = grailsApplication.parentContext.servletContext.getRealPath("/data/proc.sql")
String sqlString = new File(sqlFilePath).text
Sql sql = new Sql(sessionFactory.currentSession.connection())
sql.execute(sqlString)
这将执行在您的 sql 服务器上的文件中写入的任何 sql 语句。
谁能告诉我如何从存在于用户定义路径中的 Grails 调用存储过程。
为此,您可以使用 Groovy Sql
。
要使用 Groovy SQL:
import groovy.sql.Sql
- 使用
def dataSource
或def sessionFactory
请求对数据源的引用以进行交易 - 使用
def sql = new Sql(dataSource)
或def sql = new Sql(sessionFactory.currentSession.connection())
创建一个 Sql 对象
- 根据需要使用GroovySQL
Grails 将自动管理与数据源的连接。
注意:dataSource
和 sessionFactory
是您必须在 pojo/bean class.
所以要执行 sql 写在你的文件上的代码:
String sqlFilePath = grailsApplication.parentContext.servletContext.getRealPath("/data/proc.sql")
String sqlString = new File(sqlFilePath).text
Sql sql = new Sql(sessionFactory.currentSession.connection())
sql.execute(sqlString)
这将执行在您的 sql 服务器上的文件中写入的任何 sql 语句。