2013-03-06 3 views
2

Мне нужно подключиться к базе данных mySQL из моего кода Scala. У меня есть код ниже, чтобы установить соединение. Я импортирую java-пакеты для подключения к базе данных из scala, и я использую Drivermanager для подключения. я написал один класс и один метод внутри него, чтобы сделать коннекцию, и я расширяюсь и использую ее из своего объекта.Подключение mySQL из Scala с использованием драйвера JDBC

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") 
} 
} 

но бросает исключение, которое не coud подключиться к базе данных .. Кто-нибудь может мне помочь ... спасибо заранее

+0

Не могли бы вы рассказать нам, какое исключение ** точно ** было брошено (тот, который вы ловите внутри DBConnectionClass)? –

ответ

2

Вам лучше не печатать трассировку стека вместо этого сообщения. Последнее говорит вам, что что-то не так; первый говорит вам, почему.

Я могу только догадываться без «почему», но может быть, что JDBC-драйвер JAR недоступен, сервер не виден с клиента, слушатель MySQL не выполняет LISTENING на порту 3306, есть межсетевой экран между вами и сервером, который не позволяет вам получить доступ.

Вы действительно хотите войти в систему под именем root? Это кажется мне опасным и ошибочным.

Соблюдайте осторожность с помощью this tutorial, и вы разобрались.

Смежные вопросы