在groovy中连接到mysql时找不到合适的驱动程序

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource import com.mysql.jdbc.* import groovy.sql.* /* the commented code works fine MysqlDataSource ds = new MysqlD

    import com.mysql.jdbc.jdbc2.optional.MysqlDataSource
    import com.mysql.jdbc.*
    import groovy.sql.*

    /*  the commented code works fine

    MysqlDataSource ds = new MysqlDataSource()
    ds.user = 'root'
    ds.password = ""
    ds.url = 'jdbc:mysql://localhost:3306/test'

    Sql sql=Sql.newInstance(ds)

    sql.close()
    */
    d=Class.forName("com.mysql.jdbc.Driver").newInstance()
    println d.class // class com.mysql.jdbc.Driver


    Sql sql=Sql.newInstance(
    'jdbc:mysql://localhost:3306/test','root',"",'com.mysql.jdbc.Driver'
    )

注释的代码工作正常,我可以得到驱动程序的实例
但是当我使用的时候

     Sql sql=Sql.newInstance(
     'jdbc:mysql://localhost:3306/test','com.mysql.jdbc.Driver'
     )

它引发了一个异常:
java.sql.SQLException:没有为jdbc找到合适的驱动程序:mysql:// localhost:3306 / test
我无法解决它,是否有任何男孩来帮助我?
最佳答案
Java中的JDBC驱动程序管理查看JDBC jar的系统类加载器.

因此,要在GroovyConsole中运行mysql访问脚本,您需要使用:

@GrabConfig( systemClassLoader=true )
@Grab( 'mysql:mysql-connector-java:5.1.27' )

在你的脚本中,或者你需要通过运行它来启动带有类路径jar的控制台:

groovyconsole -cp mysql-connector-java-5.1.27-bin.jar

我不认为有一种方法可以告诉add jar to path选项使用systemClassLoader

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部