groovy-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jochen Theodorou (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GROOVY-7817) Rewrite all our sql tutorials to use datasource
Date Wed, 27 Apr 2016 19:28:12 GMT

    [ https://issues.apache.org/jira/browse/GROOVY-7817?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15260790#comment-15260790
] 

Jochen Theodorou commented on GROOVY-7817:
------------------------------------------

you are right, the property file approach works better with the jdbc driver string version.

> Rewrite all our sql tutorials to use datasource
> -----------------------------------------------
>
>                 Key: GROOVY-7817
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7817
>             Project: Groovy
>          Issue Type: Bug
>            Reporter: Jochen Theodorou
>              Labels: JDK9
>
> In JDK9 using the system loader is not going to work any longer with @Grab. This imposes
a problem for scripts in our tutorials, which demo database usage. Since changing the database
driver access mechanism to use the loader of the Groovy runtime instead of the system loader
is not solving the problem I suggest to really update that old java 1.2 usage of jdbc and
migrate all our scripts to datasources.
> As an example of datasource usage:
> {code:Java}
> @Grab(group='com.h2database', module='h2', version='1.3.168')
> import groovy.sql.Sql
> import org.h2.jdbcx.JdbcDataSource;
> def ds = new JdbcDataSource(URL: "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1", user: "sa", password:
"sa");
> def sql = Sql.newInstance(ds)
> sql.execute '''
>      create table PROJECT (
>          id integer not null,
>          name varchar(50),
>          url varchar(100),
>      )
>  '''
> def params = [10, 'Groovy', 'http://groovy.codehaus.org']
> sql.execute 'insert into PROJECT (id, name, url) values (?, ?, ?)', params
> println 'Some GR8 projects:'
> sql.eachRow('select * from PROJECT') { row ->
>     println "${row.name.padRight(10)} ($row.url)"
> }
> {code}
> the example is largely copied from the SQL javadoc or our documentation... as can be
seen those largely still sue the codehaus urls as well



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message