MySQL Java Connector
MySQL обеспечивает связь для клиентских приложений Java с помощью MySQL Connector / J, драйвера, который реализует API Java Database Connectivity (JDBC) . API является отраслевым стандартом для независимой от базы данных связи между языком программирования Java и широким спектром — базами данных SQL, электронными таблицами и т. Д. API JDBC может выполнять следующие действия:
- Установите соединение с базой данных или получите доступ к любому источнику табличных данных.
- Отправьте операторы SQL.
- Получать и обрабатывать результаты, полученные из базы данных.
В следующем разделе мы обсудили, как устанавливать, настраивать и разрабатывать приложения баз данных, используя MySQL Connector / J (драйвер JDBC).
MySQL, Connector / J версия :
Соединитель / Дж версия | JDBC версия | MySQL Server версия | Статус |
---|---|---|---|
5,1 | 3.0, 4.0 | 4,1, 5,0, 5,1, 5,5, 5,6, 5,7 | Рекомендуемая версия |
5.0 | 3.0 | 4.1, 5.0 | Выпущенная версия |
3,1 | 3.0 | 4.1, 5.0 | устарелый |
3.0 | 3.0 | 3.х, 4.1 | устарелый |
Скачать Connector / J :
MySQL Connector / J является официальным драйвером JDBC для MySQL. Вы можете скачать последнюю версию MySQL Connector / J в двоичном или исходном дистрибутиве со следующего веб-сайта —
http://dev.MySQL.com/downloads/connector/j/
Для Независимой от платформы выберите любую из следующих:
Драйверы пакета Connector / J можно установить с помощью двоичной, двоичной или исходной установки. Двоичный метод — это простой, представляющий собой набор необходимых библиотек и других предварительно собранных файлов с программой установки. Исходный метод установки важен, если вы хотите настроить или изменить процесс установки, или для тех платформ, где двоичный установочный пакет недоступен. Помимо этого решения, вы вручную добавляете местоположение Connector / J в ваш путь к классам Java.
MySQL Connector / J распространяется в виде архива .zip или .tar.gz, содержащего исходные файлы, файлы классов. После распаковки дистрибутивного архива вы можете установить драйвер, поместив MySQL-connector-java-version-bin.jar в ваш путь к классу, либо добавив полный путь к нему в переменную среды вашего classpath, либо указав его непосредственно с помощью командной строки. ключ -cp при запуске JVM.
Вы можете установить переменную окружения classpath в Unix, Linux или Mac OS X локально для пользователя в его .profile, .login или другом файле входа. Вы также можете установить его глобально, отредактировав глобальный файл / etc / profile.
Например, добавьте драйвер Connector / J в ваш путь к классу, используя одну из следующих форм, в зависимости от вашей командной оболочки:
# Bourne-совместимая оболочка (sh, ksh, bash, zsh): shell> export CLASSPATH = / путь / MySQL-соединитель-java-ver-bin.jar: $ CLASSPATH # C shell (csh, tcsh): shell> setenv CLASSPATH /path/MySQL-connector-java-ver-bin.jar:$CLASSPATH
В Windows 2000, Windows XP, Windows Server 2003 и Windows Vista вы можете установить переменную среды через Системную панель управления.
Установите Java Connector в Microsoft Windows
Выберите и загрузите установочные пакеты MSI с http://dev.MySQL.com/downloads/connector/j/ в соответствии с вашими требованиями.
Теперь выполните следующие шаги:
Шаг 1 :
Дважды щелкните установщик (здесь это «MySQL-connector-java-gpl-5.1.31.msi»)
Шаг 2 :
Нажмите «Выполнить» и завершите процесс.
Подключение к MySQL с помощью MySQL, Connector / J
В следующем примере показано, как подключить / завершить и обработать ошибки. (Java версии 7, обновление 25 (сборка 1.7.0_25-b16))
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class test < public static void main (String[] args) < System.out.println("\n\n***** MySQL JDBC Connection Testing *****"); Connection conn = null; try < Class.forName ("com.MySQL.jdbc.Driver").newInstance (); String userName ="root"; String password ="pqrs123"; String url ="jdbc:MySQL://localhost/sakila"; conn = DriverManager.getConnection (url, userName, password); System.out.println ("\nDatabase Connection Established. "); >catch (Exception ex) < System.err.println ("Cannot connect to database server"); ex.printStackTrace(); >finally < if (conn != null) < try < System.out.println("\n***** Let terminate the Connection *****"); conn.close (); System.out.println ("\nDatabase connection terminated. "); >catch (Exception ex) < System.out.println ("Error in connection termination!"); >> > > >
Чтобы создать java-соединение jdbc с базой данных, вы должны импортировать следующий пакет java.sql.
- импорт java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.SQLException;
Теперь мы сделаем класс с именем «test», а затем метод main.
Чтобы создать соединение с базой данных, код:
conn = DriverManager.getConnection (URL, имя пользователя, пароль);
Класс JDBC DriverManager определяет объекты, которые могут соединять приложения Java с драйвером JDBC. DriverManager является основой архитектуры JDBC. DriverManager имеет метод с именем getConnection (). Метод использует URL-адрес jdbc, имя пользователя и пароль для установления соединения с базой данных и возвращает объект соединения. Мы использовали следующий URL, имя пользователя и пароль в приведенном выше коде.
- Строка url: «jdbc: MySQL: // localhost / sakila», где первая часть «jdbc: MySQL: // localhost» — это тип базы данных (здесь это MySQL) и сервер (здесь это localhost). Остальная часть — это имя базы данных (здесь это «сакила»).
- Имя пользователя для MySQL определяется внутри переменной ‘userName’.
- Пароль для MySQL определяется внутри переменной «пароль».
DriverManager пытается установить соединение с базой данных, если соединение установлено успешно, создается объект Connection (здесь он называется «conn»), и программа отобразит сообщение «Соединение с базой данных установлено . »
Если не удается установить соединение (например, ввести пароль wong, адрес хоста и т. Д.), Вам нужно разобраться с ситуацией. Мы фиксируем ошибку в части catch оператора try… catch с соответствующими сообщениями и, наконец, закрываем соединение.
Скомпилируйте и запустите
Предположим, что «test.java» хранится в E: /, а «MySQL-connector-java-5.1.31-bin.jar» хранится в «C: / Program Files / MySQL / MySQL Connector J /».
Примечание. Путь к классам — это путь, по которому Java Runtime Environment (JRE) ищет классы и другие файлы ресурсов. Вы можете изменить путь к классу с помощью параметра -classpath или -cp некоторых команд Java при вызове JVM или других инструментов JDK или с помощью переменной среды classpath.
Запрос данных с использованием MySQL Connector / J
Предположим, мы хотим получить имена (имя, фамилия), зарплату сотрудников, которые зарабатывают больше, чем средняя зарплата и которые работают в любом из ИТ-отделов.
Структура базы данных «hr»:
Пример таблицы: сотрудники
SELECT first_name, last_name, salary FROM employees WHERE department_id IN (SELECT department_id FROM departments WHERE department_name LIKE 'IT%') AND salary > (SELECT avg(salary) FROM employees);
Вот код Java (обновление 7 версии 25 (сборка 1.7.0_25-b16))
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import java.sql.ResultSet; public class testsql < public static void main (String[] args) < Connection conn = null; try < Class.forName ("com.MySQL.jdbc.Driver").newInstance (); String userName ="root"; String password ="datasoft123"; String url ="jdbc:MySQL://localhost/hr"; conn = DriverManager.getConnection (url, userName, password); // Run SQL ->start from here Statement stmt = null; ResultSet rs = null; try < stmt = conn.createStatement(); rs = stmt.executeQuery("SELECT first_name, last_name, salary FROM employees WHERE department_id IN (SELECT department_id FROM departments WHERE department_name LIKE 'IT%') AND salary >(SELECT avg(salary) FROM employees)"); // Extract data from result set System.out.println ("\n-------------SQL DATA-------------\n"); while(rs.next()) < //Retrieve by column name String fname = rs.getString("first_name"); String lname = rs.getString("last_name"); int salary = rs.getInt("Salary"); //Display values System.out.print("Name " + fname+' '+lname); System.out.print(",Salary: " + salary); >System.out.println ("\n\n-------------END-------------\n"); > catch (SQLException ex) < // handle any errors System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); >finally < if (rs != null) < try < rs.close(); >catch (SQLException sqlEx) < >// ignore rs = null; > if (stmt != null) < try < stmt.close(); >catch (SQLException sqlEx) < >// ignore stmt = null; > > // SQL end at here > catch (Exception ex) < System.err.println ("Cannot connect to database server"); ex.printStackTrace(); >finally < if (conn != null) < try < ///System.out.println("\n***** Let terminate the Connection *****"); conn.close (); // System.out.println ("\n\nDatabase connection terminated. "); >catch (Exception ex) < System.out.println ("Error in connection termination!"); >> > > >
Скомпилируйте и запустите
Предположим, что «testsql.java» хранится в E: /, а «MySQL-connector-java-5.1.31-bin.jar» хранится в «C: / Program Files / MySQL / MySQL Connector J /».
Примечание. Путь к классам — это путь, по которому Java Runtime Environment (JRE) ищет классы и другие файлы ресурсов. Вы можете изменить путь к классу с помощью параметра -classpath или -cp некоторых команд Java при вызове JVM или других инструментов JDK или с помощью переменной среды classpath.
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
License
mysql/mysql-connector-j
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Change-Id: I0f02187ec1d966d3fac526a53ba768eb1f00aeec
Git stats
Files
Failed to load latest commit information.
README.md
MySQL provides connectivity for client applications developed in the Java programming language with MySQL Connector/J, a driver that implements the Java Database Connectivity (JDBC) API and also MySQL X DevAPI.
MySQL Connector/J 8.1 is a JDBC Type 4 driver that is compatible with the JDBC 4.2 specification. The Type 4 designation means that the driver is a pure Java implementation of the MySQL protocol and does not rely on the MySQL client libraries.
The driver also contains an implementation of MySQL X DevAPI, an application programming interface for working with MySQL as a Document Store through CRUD-based, NoSQL operations.
For more information, please visit the official MySQL Connector/J documentation.
Please refer to the README and LICENSE files, available in this repository, and the Legal Notices in the MySQL Connector/J documentation for further details.
Getting the Latest Release
MySQL Connector/J is free for usage under the terms of the specified licensing and it runs on any operating system that is able to run a Java Virtual Machine.
MySQL Connector/J can be installed from pre-compiled packages that can be downloaded from the MySQL Connector/J download page. Installing MySQL Connector/J only requires obtaining the corresponding JAR file from the downloaded bundle or installer and including it in the application’s CLASSPATH.
According to how you use MySQL Connector/J, you may also need to install the following third-party libraries on your system for it to work:
- Protocol Buffers (protobuf-java) is required for using X DevAPI
- Oracle Cloud Infrastructure SDK for Java (oci-java-sdk) is required to support OCI AIM authentication
- Simple Logging Facade API (slf4j-api) is required for using the logging capabilities provided by the default implementation of org.slf4j.Logger.Slf4JLogger by MySQL Connector/J
Alternatively, MySQL Connector/J can be obtained automatically via Maven’s dependency management by adding the following configuration in the application’s Project Object Model (POM) file:
dependency> groupId>com.mysqlgroupId> artifactId>mysql-connector-jartifactId> version>8.1.0version> dependency>
MySQL Connector/J’s own Project Object Model (POM) file specifies a transitive dependency to Protocol Buffers (protobuf-java) since it is required for using X DevAPI. However, if you do not use the X DevAPI features, you may also want to add a dependency exclusion to avoid linking the unneeded sub-library. For example:
dependency> groupId>com.mysqlgroupId> artifactId>mysql-connector-jartifactId> version>8.1.0version> exclusions> exclusion> groupId>com.google.protobufgroupId> artifactId>protobuf-javaartifactId> exclusion> exclusions> dependency>
This driver can also be complied and installed from the source available in this repository. Please refer to the MySQL Connector/J documentation for detailed instructions on how to do it.
This repository contains the MySQL Connector/J source code as per the latest release. No changes are made in this repository between releases.
There are a few ways to contribute to the MySQL Connector/J code. Please refer to the contributing guidelines for additional information.
- MySQL Connector/J Developer Guide.
- MySQL Connector/J X DevAPI Reference.
- MySQL Connector/J, JDBC and Java forum.
- #connectors channel in MySQL Community Slack. (Sign-up required if you do not have an Oracle account.)
- @MySQL on Twitter.
- MySQL Blog.
- MySQL Connectors Blog archive.
- MySQL Newsletter.
- MySQL Bugs Database.
For more information about this and other MySQL products, please visit MySQL Contact & Questions.