JDBC классы соединений и операторов - PullRequest
0 голосов
/ 10 ноября 2009

Поскольку Соединение и Заявления являются интерфейсами, методы интерфейса будут абстрактными по умолчанию. Как мы можем создать интерфейсы Connection и Statement в нашей Java-программе при подключении к базе данных?

Ответы [ 4 ]

2 голосов
/ 10 ноября 2009

Реализации предоставляются драйвером JDBC для вашей базы данных. например для MySql вы скачиваете драйвер JDBC для MySQL (Connector / J) и помещаете файл jar в путь к классу для своего приложения.

Затем вы вызываете DriverManager (например,), который дает вам экземпляр класса, который реализует интерфейс подключения.

Connection c = DriverManager.getConnection("jdbc:mysql://[yourhost]/[nameofyourdb]?user=[username]&password=[password]");

Теперь вы можете получить экземпляр класса, который реализует интерфейс Statement, из экземпляра Connection.

Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM [yourtablename]");
....

Для большего количества примеров просто немного погуглите (JDBC, java, [nameofyourdb])

Для Connector / J есть хорошая документация здесь

MySQL, Connector / J

Connector / J Примеры

2 голосов
/ 10 ноября 2009

На самом деле реализация обеспечивается драйверами JDBC. И API дает вам возможность использовать эту вещь. Посмотрите на этот пример .

0 голосов
/ 10 ноября 2009

Я работал над абстракцией для баз данных на работе. Вот пример кода

Database database = new Database(new SQL("host", "port","database", "username","password"));
List<tStd_M_lt> bases =  database.select(tStd_M_lt.class, new Where(tStd_M_lt.FIELDS.ITEM_ID.getDatabaseFieldName(), OPERATOR.LIKE, "?"), "%Base%");
for (tStd_M_lt base : bases)
{
    List<tShower_Base_Kit> kits = database.selectByForiegnKey(tShower_Base_Kit.class, base);
}

Проект называется azirt .

0 голосов
/ 10 ноября 2009

На самом деле интерфейсы предоставляются Sun, и, как всем известно, интерфейсы представляют собой набор правил, которые будут использоваться для конкретной природы программирования и для согласованной структуры. Таким образом, поставщики баз данных используют этот интерфейс и приводят API, который не разрушает прототип. В результате каждый поставщик реализован с теми же именами, что и этот интерфейс, независимо от его логики.

Таким образом, разработчикам не нужно беспокоиться о его реализации и они должны знать только об именах интерфейсов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...