Из приведенных ниже примеров в документации по sql. Если я использую любой из этих способов для создания экземпляра sql в середине класса обслуживания grails, будет ли он использовать пул соединений grails? Будет ли он участвовать в каких-либо транзакционных возможностях? Нужно ли мне самому закрывать соединение? Или он автоматически вернется в пул?
def db = [url:'jdbc:hsqldb:mem:testDB', user:'sa', password:'', driver:'org.hsqldb.jdbcDriver']
def sql = Sql.newInstance(db.url, db.user, db.password, db.driver)
или, если у вас есть существующее соединение (возможно, из пула соединений) или источник данных, используйте один из конструкторов:
def sql = new Sql(datasource)
Теперь вы можете вызвать sql, например для создания таблицы:
sql.execute '''
create table PROJECT (
id integer not null,
name varchar(50),
url varchar(100),
)
'''