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'
)
Run Code Online (Sandbox Code Playgroud)
代码注释工作正常,我可以得到驱动程序的实例
但是当我使用
Sql sql=Sql.newInstance(
'jdbc:mysql://localhost:3306/test',
'root',
"",
'com.mysql.jdbc.Driver'
)
Run Code Online (Sandbox Code Playgroud)
它引发了一个例外:
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/test
我无法解决它,是否有任何男孩来帮助我?
tim*_*tes 20
Java中的JDBC驱动程序管理查看JDBC jar的系统类加载器.
因此,要在GroovyConsole中运行mysql访问脚本,您需要使用:
@GrabConfig( systemClassLoader=true )
@Grab( 'mysql:mysql-connector-java:5.1.27' )
Run Code Online (Sandbox Code Playgroud)
在你的脚本中,或者你需要通过运行它来启动带有类路径jar的控制台:
groovyconsole -cp mysql-connector-java-5.1.27-bin.jar
Run Code Online (Sandbox Code Playgroud)
我不认为有一种方法可以告诉add jar to path选项使用systemClassLoader :-(
| 归档时间: |
|
| 查看次数: |
6509 次 |
| 最近记录: |