使用JDBC驱动程序从Scala连接mySQL

时间:2013-03-06 13:01:47

标签: mysql scala

我需要从我的Scala代码连接到mySQL数据库。我有以下代码来建立连接。我正在导入java包以从scala连接到数据库,我正在使用Drivermanager进行连接。我已经在其中编写了一个类和一个方法来进行连接,我正在扩展并从我的对象中使用它。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;

class DBConnectionClass {
  val user = "root"
  val pass = "admin"
  val url = "jdbc:mysql://172.16.40.5/scalatest"
  def readDataBase() = {
   try {
        Class.forName("com.mysql.jdbc.Driver")
        val connection: Connection = DriverManager.getConnection(url, user, pass);

   } 
   catch {
      case _: Throwable => println("Could not connect to database")
  } 

}

}

在我正在运行的scala对象中,

 object TestAppMain {
 def main(args: Array[String]){
    val DBconnObject = new DBConnectionClass
    DBconnObject.readDataBase
    println("Check DB Is connected or not")
}
}

但它抛出了一个例外,它无法连接到数据库..任何人都可以提前帮助我... thanx

1 个答案:

答案 0 :(得分:2)

您最好打印堆栈跟踪而不是该消息。后者告诉你一些事情是错的;前者告诉你原因。

我只能猜测没有“为什么”,但它可能是JDBC驱动程序JAR不可用,服务器从客户端看不到,MySQL侦听器没有在端口3306上侦听,有一个您与不允许您访问的服务器之间的防火墙。

您真的想以root用户身份登录吗?这对我来说似乎是危险和误导的。

谨慎使用this tutorial,您将对其进行整理。