codestory

JDBC Driver Bibliotheken für verschiedene Arten von Datenbank in Java

  1. Die Vorstellung
  2. Die Bibliothek zur Kontrollierung des Database Oracle
  3. JDBC Driver für Database MySQL
  4. JDBC Driver für Database SQL Server (JTDS)
  5. JDBC Driver für Database SQL Server (SQLJDBC)
  6. JDBC Driver für Database MongoDB

1. Die Vorstellung

Dieses Dokument führt Sie die Herunterladung der Bibliothek über die Steuerung einer Datenbank, jetzt gebe ich die HInweise von database
  • Oracle
  • MySQL
  • SQL Server.

2. Die Bibliothek zur Kontrollierung des Database Oracle

Die Steuerungsbibliothek der Database Oracle heißt normalerweise có tên ojdbc14.jar, ojdbc6.jar, ... Der Unterschied nur bei der Compiler von welcher Java Version. Zum Beispiel:
  • ojdbc14.jar: wird von Java Version 1.4 kompiliert und eingepackt
  • ojdbc6.jar: wird von der Java Version 6 kompiliert und eingepackt.
Mehr detailiert können Sie bei der website von Oracle sehen und herunterladen
Sie können die file ojdbc6.jar herunterladen, sie kann die database Oracle von der unterschiedlichen Version (XE, 10g, 11g, 12) steuern. Und die meiste Java Applikation verwenden momentan die Java ab Version 6 .

Sie müssen bei der website von Oracle ein Konto für die Herunterladung haben ( kostenlose Registrierung).
Bei dem schnellsten Fall können Sie nach dem folgenden Link herunterladen:
Das Ergebnis von der Herunterladung
Maven für Oracle JDBC Driver
<repositories>
       <!-- Repository for ORACLE ojdbc6. -->
       <repository>
           <id>codelds</id>
           <url>https://code.lds.org/nexus/content/groups/main-repo</url>
       </repository>
   </repositories>

    .......

   <dependencies>

       ......

       <!-- Oracle database driver -->
       <dependency>
           <groupId>com.oracle</groupId>
           <artifactId>ojdbc6</artifactId>
           <version>11.2.0.3</version>
       </dependency>

       .......

   </dependencies>
Die Gebrauchsweise (ojdbc)
// Driver class:
oracle.jdbc.driver.OracleDriver

// URL Connection String: (SID)
String urlString ="jdbc:oracle:thin:@myhost:1521:mysid"


// URL Connection String:  (Service Name)
String urlString ="jdbc:oracle:thin:username/pass@//myhost:1521/myservicename"

// Or:
String urlString ="jdbc:oracle:thin:@myhost:1521/myservicename";
Beispiel: die JDBC in die datenbank Oracle verbinden
OracleConnUtils.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OracleConnUtils {

   public static Connection getOracleConnection()
           throws ClassNotFoundException, SQLException {
       String hostName = "localhost";
       String sid = "db11g";
       String userName = "learningsql";
       String password = "1234";

       return getOracleConnection(hostName, sid, userName, password);
   }

   public static Connection getOracleConnection(String hostName, String sid,
           String userName, String password) throws ClassNotFoundException,
           SQLException {

      // Declare the class Driver for Oracle DB
      // This is necessary with Java 5 (or older)
      // Java6 (or newer) automatically find the appropriate driver.
      // If you use Java> 6, then this line is not needed.
       Class.forName("oracle.jdbc.driver.OracleDriver");

       // Example: jdbc:oracle:thin:@localhost:1521:db11g
       String connectionURL = "jdbc:oracle:thin:@" + hostName + ":1521:" + sid;

       Connection conn = DriverManager.getConnection(connectionURL, userName,
               password);
       return conn;
   }
}

3. JDBC Driver für Database MySQL

Sie können die Steuerungsbibliothek der Datenbank MySQL herunterladen bei :
Das Ergebnis von der Herunterladung
Die Gebrauchsweise
Das Gebrauch : (MySQL)
// Driver class:
com.mysql.jdbc.Driver

// URL Connection String:
String url = "jdbc:mysql://hostname:3306/dbname";


// Example:
String url = "jdbc:mysql://localhost:3306/simplehr";
Das Beispiel: JDBC anwenden, in Database MySQL zu verbinden
MySQLConnUtils.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQLConnUtils {

  public static Connection getMySQLConnection()
          throws ClassNotFoundException, SQLException {
      String hostName = "localhost";
      String dbName = "learningsql";
      String userName = "root";
      String password = "12345";
      return getMySQLConnection(hostName, dbName, userName, password);
  }

  public static Connection getMySQLConnection(String hostName, String dbName,
          String userName, String password) throws SQLException,
          ClassNotFoundException {
     // Declare the class Driver for Oracle DB
     // This is necessary with Java 5 (or older)
     // Java6 (or newer) automatically find the appropriate driver.
     // If you use Java> 5, then this line is not needed.
      Class.forName("com.mysql.jdbc.Driver");


      // Ví dụ: jdbc:mysql://localhost:3306/simplehr
      String connectionURL = "jdbc:mysql://" + hostName + ":3306/" + dbName;

      Connection conn = DriverManager.getConnection(connectionURL, userName,
              password);
      return conn;
  }
}
Einige Problem und die Überwindung
In einigen Fällen von der Verbindung in MySQL aus Java oder einfach aus der anderen Maschine gibt es die Fehler. Der Grund liegt darin, dass Sie genehmigen noch nicht , die Konfiguration MySQL server aus der anderen Maschine zu verbinden
Sie können die Part von der Konfiguration im Dokument "Hướng dẫn cài đặt và cấu hình MySQL Community": (Führung bei der Installation und der Konfiguration MySQL Community) nochmals sehen

4. JDBC Driver für Database SQL Server (JTDS)

JTDS ist eine andere Steuerungsbibliothek der database SQLServer, Das ist eine Open Source Bibliothek
jTDS: ist eine totale Open Source Code Java 100% (type 4) JDBC 3.0steuert Microsoft SQL Server (6,5, 7, 2000, 2005, 2008, 2012) und Sybase ASE (10, 11, 12, 15). jTDS basiert auf die FreeTDS und ist der momentan schnellste Betreiber JDBC für SQL Server und Sybase. jTDS entspricht ganz 100% der JDBC 3.0, unterstützt forward-only und scrollable/updateable ResultSet und tut alle Methode von DatabaseMetaData und ResultSetMetaData.
Sie können die Version herunterladen bei
Das Ergebnis von der Herunterladung:
Die Gebrauchsweise (jtds)
Das Gebrauch von (SQL Server)
// Driver Class
net.sourceforge.jtds.jdbc.Driver

// Connection URL String:
jdbc:jtds:<server_type>://<server>[:<port>][/<database>][;<property>=<value>[;...]]

// Example 1:
String url = "jdbc:jtds:sqlserver://MYPC:1433/simplehr;instance=SQLEXPRESS;user=sa;password=s3cr3t";

getConnection(url);

// Example 2:
String url = "jdbc:jtds:sqlserver://MYPC:1433/simplehr;instance=SQLEXPRESS";

getConnection(url, "sa", "s3cr3t"):
Das Beispiel: Anwendung von JDBC für die Verbindung mit Database SQLServer , die die Bibliothek JTDS benutzt.
SQLServerConnUtils_JTDS.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class SQLServerConnUtils_JTDS {

 // Connect to SQLServer.
 // (Using JTDS library)
 public static Connection getSQLServerConnection_JTDS() throws SQLException,
         ClassNotFoundException {
     String hostName = "localhost";
     String sqlInstanceName = "SQLEXPRESS";
     String database = "simplehr";
     String userName = "sa";
     String password = "12345";

     return getSQLServerConnection_JTDS(hostName, sqlInstanceName, database,
             userName, password);
 }


 // JTDS & SQLServer.
 private static Connection getSQLServerConnection_JTDS(String hostName,
         String sqlInstanceName, String database, String userName,
         String password) throws ClassNotFoundException, SQLException {

    // Declare the class Driver for Oracle DB
    // This is necessary with Java 5 (or older)
    // Java6 (or newer) automatically find the appropriate driver.
    // If you use Java> 5, then this line is not needed.
     Class.forName("net.sourceforge.jtds.jdbc.Driver");

      // Example:
     // jdbc:jtds:sqlserver://localhost:1433/simplehr;instance=SQLEXPRESS
     String connectionURL = "jdbc:jtds:sqlserver://" + hostName + ":1433/"
             + database + ";instance=" + sqlInstanceName;

     Connection conn = DriverManager.getConnection(connectionURL, userName,
             password);
     return conn;
 }

}
Einige Probleme und die Überwindung
In einigen Fällen von der Verbindung mit SQL Server gibt es den Fehler
Exception in thread "main" java.sql.SQLException: Server tran-vmware has no instance named SQLEXPRESS.
   at net.sourceforge.jtds.jdbc.JtdsConnection.<init>(JtdsConnection.java:301)
   at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:184)
   at java.sql.DriverManager.getConnection(DriverManager.java:571)
   at java.sql.DriverManager.getConnection(DriverManager.java:215)
   at org.o7planning.tutorial.jdbc.ConnectionUtils.getSQLServerConnection_JTDS(ConnectionUtils.java:189)
   at org.o7planning.tutorial.jdbc.ConnectionUtils.getSQLServerConnection_JTDS(ConnectionUtils.java:72)
   at org.o7planning.tutorial.jdbc.ConnectionUtils.getMyConnection(ConnectionUtils.java:31)
   at org.o7planning.tutorial.jdbc.TestConnection.main(TestConnection.java:20)
Der oben Fehler erscheint deswegen Sie die Dienstleistung TCP/IP von SQLServer noch nicht einschalten. Sie können die Part von der Konfiguration nochmals sehen im Dokument "Hướng dẫn cài đặt và cấu hình SQLServer Express ..." (HInweise bei der Installation und der Konfiguration SQL Server Express) bei:

5. JDBC Driver für Database SQL Server (SQLJDBC)

SQLJDBC ist eine Bibliothek, die von Microsoft geboten wird
Download:
Die heruntergeladete File dekomprimieren
Das Ergebnis : wir bekommen eine Bibliothek
Die Gebrauchsweise (sqljdbc)
// Driver Class:
com.microsoft.sqlserver.jdbc.SQLServerDriver

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

// Url String:
String url = "jdbc:sqlserver://ServerIp;Instance=SQLEXPRESS;databaseName=simplehr";

// or
String url = "jdbc:sqlserver://ServerIp:1433;Instance=SQLEXPRESS;databaseName=simplehr";

String user = "dbUserID";
String pass = "dbUserPassword";

Connection connection = DriverManager.getConnection(url, user, pass);
Das Beispiel: die Verwendung JDBC für die Verbindung mit Database SQLServer , die die Bibliothek SQLJDBC. benutzt
SQLServerConnUtils_SQLJDBC.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class SQLServerConnUtils_SQLJDBC {
 
  // Connect to SQLServer.
  // (Using SQLJDBC)
  public static Connection getSQLServerConnection_SQLJDBC()
          throws ClassNotFoundException, SQLException {
      String hostName = "localhost";
      String sqlInstanceName = "SQLEXPRESS";
      String database = "learningsql";
      String userName = "sa";
      String password = "12345";

      return getSQLServerConnection_SQLJDBC(hostName, sqlInstanceName,
              database, userName, password);
  }



  // SQLServer & SQLJDBC.
  private static Connection getSQLServerConnection_SQLJDBC(String hostName,
          String sqlInstanceName, String database, String userName,
          String password) throws ClassNotFoundException, SQLException {
     // Declare the class Driver for Oracle DB
     // This is necessary with Java 5 (or older)
     // Java6 (or newer) automatically find the appropriate driver.
     // If you use Java> 5, then this line is not needed.
      Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");


      // Example:
      // jdbc:sqlserver://ServerIp:1433/SQLEXPRESS;databaseName=simplehr
      String connectionURL = "jdbc:sqlserver://" + hostName + ":1433"
              + ";instance=" + sqlInstanceName + ";databaseName=" + database;

      Connection conn = DriverManager.getConnection(connectionURL, userName,
              password);
      return conn;
  }

}
Einige Probleme und die Überwindung
Bei der Fall von der Verbindung mit SQL Server gibt es den Fehler
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
  at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
  at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:241)
  at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2243)
  at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:491)
  at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1309)
  at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
  at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
  at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
  at java.sql.DriverManager.getConnection(Unknown Source)
  at java.sql.DriverManager.getConnection(Unknown Source)
  ...
Der oben Fehler erscheint deswegen Sie die Dienstleistung TCP/IP von SQLServer noch nicht einschalten. Sie können die Part von der Konfiguration nochmals sehen im Dokument "Hướng dẫn cài đặt và cấu hình SQLServer Express ..." (HInweise bei der Installation und der Konfiguration SQLServer Express) bei:
Wenn der Fehler wieder erscheint:
Exception in thread "main" com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host tran-vmware, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
 at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:241)
 at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2243)
 at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:491)
 at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1309)
 at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
 at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
 at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
 at java.sql.DriverManager.getConnection(DriverManager.java:571)
 at java.sql.DriverManager.getConnection(DriverManager.java:215)
 ...
Das ist ein unangenehmer Fehler. Denn bei dem Wechsel zur Bibliothek JTDS erscheint dieser Fehler nicht
  • TODO
  • You should use JTDS

6. JDBC Driver für Database MongoDB

Die Steuerungsbibliothek der Datenabank MongoDB können Sie herunterladen bei :
Sie können es bei Maven Repository herunterladen

Java Grundlagen

Show More