java tutorial - Руководство Java JDBC - учебник java - java programming - учиться java - java basics - java for beginners



 java jdbc
java - джава - учиться java - учебник java -
java jdbc
- примеры java - java-программы

Database использующийся в данной статье

  • В этом документе вы узнаете, как использовать Java для соединения с базой данных.
  • Модель базы данных, используемая в этом документе - "simplehr". Вы можете просмотретьсценарии создания базы данных по ссылке:

Что такое JDBC?

  • Java Database Connectivity (JDBC) - это стандартный API для взаимодействия с реляционными базами данных. JDBC имеет набор классов и интерфейсов, которые могут использоваться для Java-приложения и разговаривать с базой данных,.
 jdbc
java - джава - учиться java - учебник java -
jdbc
- примеры java - java-программы

Основные компоненты JDBC Api включают:

DriverManager:

  • Это класс, использующийся для управления списком Driver (database drivers).

Driver:

  • Это интерфейс, использующийся для соединения коммуникации с базой данных, управления коммуникации с базой данных. Когда загружается Driver, программисту не нужно конкретно вызывать его.

Connection :

  • Интерфейс со всеми методами связи с базой данных. Он описывает коммуникационный контекст. Вся связь с базой данных осуществляется только через объект соединения (connection).

Statement :

  • Это интерфейс, включающий команду SQL отправленный в базу данных для анализа, обобщения, планирования и выполнения.

ResultSet :

  • ResultSet представляет набор записей, извлеченных из-за выполнения запроса.

На каком принципе подключается Java к базе данных?

  • Java с использует JDBC для работы с базой данных.
 java приложение
java - джава - учиться java - учебник java -
java приложение
- примеры java - java-программы
  • Например, при работе с Oracle Database из Java вам необходимо иметь Driver (это класс, управляющий соединением с видами баз данных, которые вы хотите). В JDBC API у нас есть java.sql.Driver, это только интерфейс, и он доступен в JDK. Таким образом, вы должны загрузить библиотеку Driver, совместимую с видом необходимой вам базы данных.
  • Например, с Oracle, класс реализующий интерфейс java.sql.Driver является oracle.jdbc.driver.OracleDriver
  • java.sql.DriverManager - это класс в JDBC API. Он отвечает за управление драйверами (Driver).
  • Посмотрите на иллюстрацию ниже:
  • У нас есть два способа работы с определенной базой данных.
  • Способ 1: вы предоставляете Driver управляющий этим видом базы данных, это прямой способ. Если вы используете DB oracle (или другой DB), вам нужно будет загрузить конкретную библиотеку JDBC этой BD.
  • Способ 2: объявите "ODBC Datasource" и используйте мост JDBC-ODBC для соединения с этим "ODBC Datasource". Мост JDBC-ODBC доступен в JDBC API.
  • Вопрос для нас в том, что такое " ODBC DataSource"?
  • ODBC - Open Database Connectivity: Это набор открытых библиотек, которые могут подключаться практически ко всем видам различных баз данных, и это бесплатно. Предоставляется Microsoft.
  • ODBC DataSource: в операционной системе Windows вы можете объявить соединение ODBC с определенным видом BD. В результате у нас есть источник данных (Data Source).
  • В JDBC API, JDBC-ODBC Bridge (мост) был настроен так, что JDBC может работать с ODBC Data Source.
  • Что касается скорости, первый способ быстрее, чем второй, потому что второй должен использовать мост.

Скачать некоторые важные драйверы (Driver)

  • Если вы не хотите использовать JDBC-ODBC, вы можете напрямую подключиться к базе данных. В этом случае вам необходимо загрузить драйвер, соответствующий с каждым видом базы данных. Здесь я покажу вам как скачать один вид драйвера для распространенных баз данных:
    • Oracle
    • MySQL
    • SQLServer
  • Вы можете смотреть инструкцию здесь:
  • В результате у нас есть несколько файлов:
 java файлов
java - джава - учиться java - учебник java -
java файлов
- примеры java - java-программы

Создать project, чтобы начать пример с JDBC

  • Создание нового проекта JavaJdbcTutorial:
 cоздание проекта
java - джава - учиться java - учебник java -
cоздание проекта
- примеры java - java-программы
  • Создайте папку libs в проекте, скопируйте библиотеки подключенные напрямую к видам баз данных Oracle, MySQL, SQLServer, которые вы только что загрузили. Вы можете скопировать все или одну из этих библиотек, совместимую с используемым видом базы данных
 cоздание проекта java
java - джава - учиться java - учебник java -
cоздание проекта java
- примеры java - java-программы
  • Кликните правой кнопкой мыши на проект и выберите Properties:
 свойства java
java - джава - учиться java - учебник java -
свойства java
- примеры java - java-программы
 построить путь к java
java - джава - учиться java - учебник java -
построить путь к java
- примеры java - java-программы
  • Теперь вы готовы работать с одним из баз данных ( Oracle, MySQL, SQL Server)

Connection

  • В этой статье я покажу вам как подключиться ко всем трем видам баз данных:
    • MySQL
    • SQLServer
    • Oracle
  • На практике вам просто нужно работать с видом базы данных (DB), к которому вы привыкли.
 серверы java
java - джава - учиться java - учебник java -
серверы java
- примеры java - java-программы
  • Создаем класс ConnectionUtils для получения Connection чтобы подключиться к базе данных.
 util подключения Java
java - джава - учиться java - учебник java -
util подключения Java
- примеры java - java-программы

ConnectionUtils.java

package com.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.SQLException;
 
public class ConnectionUtils {
 
    public static Connection getMyConnection() throws SQLException,
            ClassNotFoundException {
   
        // Using Oracle
        // You may be replaced by other Database.
        return OracleConnUtils.getOracleConnection();
    }
 
    //
    // Test Connection ...
    //
    public static void main(String[] args) throws SQLException,
            ClassNotFoundException {
 
        System.out.println("Get connection ... ");
 
        // Get a Connection object
        Connection conn = ConnectionUtils.getMyConnection();
 
        System.out.println("Get connection " + conn);
 
        System.out.println("Done!");
    }
 
                }
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда

OracleConnUtils.java

package org.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class OracleConnUtils {
 
    // Connect to Oracle.
    public static Connection getOracleConnection() throws SQLException,
            ClassNotFoundException {
        String hostName = "localhost";
        String sid = "db11g";
        String userName = "simplehr";
        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> 5, then this line is not needed.        
        Class.forName("oracle.jdbc.driver.OracleDriver");
 
        String connectionURL = "jdbc:oracle:thin:@" + hostName + ":1521:" + sid;
 
        Connection conn = DriverManager.getConnection(connectionURL, userName,
                password);
        return conn;
    }
}
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда

MySQLConnUtils.java

package com.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class MySQLConnUtils {
 
 
   // Connect to MySQL
   public static Connection getMySQLConnection() throws SQLException,
           ClassNotFoundException {
       String hostName = "localhost";
 
       String dbName = "simplehr";
       String userName = "root";
       String password = "1234";
 
       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 MySQL 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");
 
       String connectionURL = "jdbc:mysql://" + hostName + ":3306/" + dbName;
 
       Connection conn = DriverManager.getConnection(connectionURL, userName,
               password);
       return conn;
   }
}
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда

SQLServerConnUtils_JTDS.java

package com.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class SQLServerConnUtils_JTDS {
 
 
   // Connect to SQLServer
   // (Using JDBC Driver of JTDS library)
   public static Connection getSQLServerConnection()
           throws SQLException, ClassNotFoundException {
       String hostName = "localhost";
       String sqlInstanceName = "SQLEXPRESS";
       String database = "simplehr";
       String userName = "sa";
       String password = "1234";
 
       return getSQLServerConnection(hostName, sqlInstanceName, database,
               userName, password);
   }
 
   // Connect to SQLServer & using JTDS library
   public static Connection getSQLServerConnection(String hostName,
           String sqlInstanceName, String database, String userName,
           String password) throws ClassNotFoundException, SQLException {
 
       // Declare the class Driver for SQLServer 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;
   }
 
}
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда

SQLServerConnUtils_SQLJDBC.java

package com.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class SQLServerConnUtils_SQLJDBC {
 
   // Connect to SQLServer
   // (Using JDBC Driver: SQLJDBC)
   public static Connection getSQLServerConnection()
           throws SQLException, ClassNotFoundException {
       String hostName = "localhost";
       String sqlInstanceName = "SQLEXPRESS";
       String database = "simplehr";
       String userName = "sa";
       String password = "1234";
 
       return getSQLServerConnection(hostName, sqlInstanceName,
               database, userName, password);
   }
 
   //
   // Connect to SQLServer & using SQLJDBC Library.
   public static Connection getSQLServerConnection(String hostName,
           String sqlInstanceName, String database, String userName,
           String password) throws ClassNotFoundException, SQLException {
        
       // Declare the class Driver for SQLServer 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");
 
 
       // 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;
   }
 
}
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда

ODBCConnUtils.java

package com.wikitechy.tutorial.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class ODBCConnUtils {
 
    // Connect to ODBC Data Source named "simplehr-ds".
    public static Connection getJdbcOdbcConnection() throws SQLException,
            ClassNotFoundException {
        String odbcDataSourceName = "simplehr-ds";
        String userName = "simplehr";
        String password = "simplehr";
        return getJdbcOdbcConnection(odbcDataSourceName, userName, password);
    }
 
    public static Connection getJdbcOdbcConnection(String odbcDataSourceName,
            String userName, String password) throws SQLException,
            ClassNotFoundException {
  
        // Declare the class Driver for JDBC-ODBC Bridge
        // 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("sun.jdbc.odbc.JdbcOdbcDriver");
 
        String connectionURL = "jdbc:odbc:" + odbcDataSourceName;
 
        Connection conn = DriverManager.getConnection(connectionURL, userName,
                password);
        return conn;
    }
}
нажмите кнопку ниже, чтобы скопировать код. - от - java tutorials - команда
  • Вы можете изменить класс ConnectionUtils для подключения к знакомой базе данных и запустить этот класс для тестирования соединения.
 Консоль Java связи util
java - джава - учиться java - учебник java -
Консоль Java связи util
- примеры java - java-программы

Related Searches to Руководство Java JDBC