Спецификация API базы данных для Java
Существует ли спецификация Database API для Java, которая похожа на ту, что существует для Python ( PEP249).
Я хотел бы создать приложение, которое можно использовать для универсального подключения к базам данных, не беспокоясь о типе механизма базы данных.
1 ответ
Да, такой API существует и - AFAIK - он предшествует усилиям Python по стандартизации. Эта спецификация и ее API называются JDBC или Java DataBase Connectivity. Текущая версия - JDBC 4.2 (в настоящее время находится в разработке JDBC 4.3), также идентифицируемая как JSR 221: выпуск 2 Технической спецификации API JDBC TM 4.0.
Вы можете найти документ со спецификацией по адресу https://jcp.org/en/jsr/detail?id=221
Интерфейсы API включены в основной Java API. Посмотреть пакеты java.sql
а также javax.sql
,
Посмотрите Учебное руководство по Java : Доступ к базе данных JDBC(TM) для ознакомления.
Спецификация JDBC связана с версией Java, поэтому:
- Java 9: JDBC 4.3
- Java 8: JDBC 4.2
- Java 7: JDBC 4.1
- Java 6: JDBC 4.0
- ... ранние версии уже не так интересны
Версии JDBC, как правило, являются аддитивными, поэтому функции более ранних версий переносятся в более новую версию и, за исключением некоторых ранних ошибок, обычно не устаревают. Иногда незначительные уточнения или семантические изменения могут быть сделаны в более новых версиях спецификации.
Имейте в виду, что функции в более новых версиях JDBC (обычно) доступны только в том случае, если драйвер действительно реализует эту версию JDBC.
Раскрытие информации: я являюсь членом экспертной группы JDBC