Java Database Connectivity
Материал из Википедии — свободной энциклопедии
Java DataBase Connectivity, сокращенно JDBC — соединение с базами данных на Java — платформно-независимый промышленный стандарт взаимодействия Java-приложений с различными СУБД, реализованный в виде пакета java.sql
, входящего в состав Java SE.
Если быть точным, то JDBC является торговой маркой, а не аббревиатурой.
JDBC основана на концепции т. н. драйверов, позволяющих получать соединение с базой данных по специально описанному URL. Драйверы могут загружаться динамически (во время работы программы). Загрузившись, драйвер сам регистрирует себя и вызывается автоматически, когда программа требует URL, содержащий протокол, за который драйвер «отвечает».
JDBC API содержит два основных типа интерфейсов: первый - для разработчиков приложений и второй (более низкого уровня) - для разработчиков драйверов.
Соединение с базой данных описывается классом, реализующим интерфейс java.sql.Connection
.
Имея соединение с базой данных, можно создавать объекты типа Statement, служащие для исполнения запросов к базе данных на языке SQL.
Существуют следующие виды типов Statement, различающихся по назначению:
java.sql.Statement
— Statement общего назначения.java.sql.PreparedStatement
— Statement, служащий для выполнения запросов, содержащих подставляемые параметры (обозначаются значком '?' в теле запроса).java.sql.CallableStatement
— Statement, предназначенный для вызова хранимых процедур.
Интерфейс java.sql.ResultSet
позволяет легко обрабатывать результаты запроса.
Преимущества JDBC:
- Лёгкость разработки: разработчик может не знать специфики базы данных, с которой работает
- Код не меняется, если компания переходит на другую базу данных
- Не нужно устанавливать громоздкую клиентскую программу
- К любой базе можно подсоединиться через легко описываемый URL
[править] Пример кода
Данный пример использует jTDS, свободный драйвер JDBC для Microsoft SQL Server и Sybase SQL Server. Подключиться к этой и другим СУБД можно и встроенными средствами с помощью драйвера JDBC для ODBC, но ценой замедления работы.
/** * эта строка указывает альтернативный драйвер DB. Например hsql. */ // Class.forName("org.hsqldb.jdbcDriver"); Connection conn = DriverManager.getConnection( "jdbc:jtds:sqlserver://SERVER/Northwind;instance=INST;domain=Sample_NTLM_Domain", "user", "password"); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT LastName + ' ' + FirstName AS FullName, Address FROM Employees"); while(rs.next()) { System.out.println(rs.getString("FullName") + "\t" + rs.getString("Address")); } rs.close(); stmt.close();
[править] См. также
[править] Ссылки
Это незавершённая статья о компьютерных языках. Вы можете помочь проекту, исправив и дополнив её. |