2

我需要从我的 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")
}
}

但它抛出了一个无法连接到数据库的异常..任何人都可以帮助我......提前谢谢

4

1 回答 1

2

您最好打印堆栈跟踪而不是该消息。后者告诉你出了点问题;前者告诉你为什么。

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

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

仔细阅读本教程,您将解决它。

于 2013-03-06T13:04:49.627 回答