Как подключить базу данных в Java? - Интерфейсы и работа JDBC

Содержание:

Anonim

Как подключить базу данных в Java?

При написании IT-приложения с использованием любого языка программирования поток данных из приложения и в него выполняет основные функции. Если на поток данных каким-то образом влияют, это может отрицательно повлиять на функциональность приложения и может нанести большой ущерб бизнесу.

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

Мы рассмотрим один из таких подходов, используя Java в качестве языка программирования, JDBC в качестве метода подключения к базе данных и следуя объектно-ориентированному подходу.

Что такое JDBC?

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

Используя JDBC, программист должен иметь возможность:

  • Установить соединение с базой данных
  • Запустите команды SQL, отправив их в базу данных
  • Интерпретирует результаты, поступающие из базы данных

Создание базы данных для подключения базы данных в Java

Перед началом работы с JDBC необходимо иметь базу данных для подключения к ней. Мы будем использовать базу данных Oracle для нашей иллюстрации. Пожалуйста, скачайте оракул 11g Express Edition по ссылке ниже.

https://www.oracle.com/technetwork/products/express-edition/overview/index-100989.html

У меня уже есть готовый установщик Oracle 10g, как вы можете видеть ниже:

Источник : с моего рабочего стола

  • Пожалуйста, дважды щелкните по установщику, появится экран ниже. Нажмите кнопку "Далее.

Источник : с моего рабочего стола

  • Пожалуйста, примите лицензионное соглашение и нажмите «Далее».

Источник : с моего рабочего стола

  • Пожалуйста, сохраните настройки по умолчанию, как они, и нажмите кнопку Далее.

Источник : с моего рабочего стола

  • Он запросит пароль, который потребуется при входе в экземпляр Oracle 11g. Пожалуйста, введите пароль и нажмите «Далее».

Источник : с моего рабочего стола

  • После того, как вы введете пароль, начнется процесс установки. После завершения установки на вашем рабочем столе появится ярлык. Если вы не можете найти его, перейдите в Windows Start и найдите Oracle, вы должны его получить. Нажмите на него, и он откроет тонкий клиент для вас через браузер. Войдите в экземпляр. Обратите внимание, что имя пользователя будет одинаковым для БД Oracle, т.е. для системы. Пароль будет тем, который вы указали при настройке базы данных.

Источник: с моего рабочего стола

  • Теперь, когда вы войдете в систему, самый первый экран, который вы увидите, будет выглядеть ниже:

Источник: с моего рабочего стола

  • Теперь давайте создадим таблицу. Пожалуйста, нажмите на модуль SQL с экрана выше и выполните запрос ниже.

Источник: с моего рабочего стола

  • Как видите, мы успешно создали таблицу с именем Educba.

Подключите базу данных на Java

Существует несколько интерфейсов и классов, которые используются для подключения к базе данных и выполнения операций с использованием JDBC API.

Мы объясним один за другим, но позвольте мне сначала представить вам следующую программу:



Источник: с моего рабочего стола

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

  1. Диспетчер драйверов
  2. соединение
  3. утверждение
  4. Набор результатов
  5. Подготовленное заявление

Давайте посмотрим на операции, которые мы можем выполнять как часть операции JDBC.

  1. Сохраните данные от объекта в базу данных, т.е. операцию создания
  2. Получить данные для объекта или компонента из базы данных
  3. Обновите данные для объекта или компонента в базе данных.
  4. Удалить или удалить данные об объекте или бине из базы данных.

Независимо от того, какую операцию мы выполняем, есть несколько основных шагов, которые остались бы прежними:

1. Загрузите драйвер.

Class. forName ("oracle.jdbc.driver.OracleDriver");

2. Создайте строку URL

String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";

3. Используйте диспетчер драйверов для создания соединения

con=DriverManager.getConnection(URL, USERNAME, PASSWORD);

4. Используйте ссылку Connection для создания Заявления

stmt = conn.createStatement();

5. Используйте оператор для выполнения запроса

6. Обработайте набор результатов (необязательно, зависит)

7. Освободите ресурсы в блоке finally.

иллюстрация

Поскольку мы используем базу данных Oracle в нашем примере, нам необходим драйвер, который должен быть предоставлен Oracle. Класс драйвера обычно имеет вид jar-файла с именем ojdbc14.jar. Этот драйвер должен быть импортирован в вашу Java-программу как часть «Библиотеки со ссылками», если его там нет.

Если вы установили Oracle 11g в папку C, в идеале его можно найти по следующему пути: (Если его там нет, его можно легко загрузить отсюда)

C: \ oraclexe \ приложение \ оракул \ продукт \ 10.2.0 \ сервер \ JDBC \ Lib

Источник: с моего рабочего стола

Должно быть доступно много jar-файлов, но ojdbc14.jar - самый последний. То же самое можно использовать для наших целей. Эта банка должна быть добавлена ​​в classpath проекта. Пожалуйста, проверьте изображение ниже.

Источник: с моего рабочего стола

Давайте создадим таблицу Artist со следующими атрибутами: (Вы можете напрямую запустить командную строку SQL, которая поставляется как отдельный модуль Oracle Express edition. Но сначала вам нужно подключиться, и вы можете выполнить команду «connect», чтобы подключиться к база данных.

Источник: с моего рабочего стола

В рамках этой иллюстрации мы создадим три java-класса, то есть Artist.java, CreateTable.java и ArtistManagementDao.java, чтобы добиться этого.

Также в слое Java нам нужно создать класс с именем Artist bean. Этот класс должен иметь атрибуты Artist с указанным выше контекстом. Это будет выглядеть ниже:

Artist.java

Давайте создадим 2 других Java-класса с именами ArtistManagementDao и CreateTable.java.

ArtistManagementDao.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao (
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
(
try (
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?, ?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
) catch (ClassNotFoundException e) (
// TODO Auto-generated catch block
System.out.println(e);
) catch (SQLException e) (
System.out.println(e);
)
)
)

CreateTable.java

package com;
import java.sql.*;
public class CreateTable(
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String() args) (
Connection conn = null;
Statement stmt = null;
try(
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database…");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database…");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
)catch(SQLException se)(
se.printStackTrace();
)catch(Exception e)(
e.printStackTrace();
)finally(
try(
if(stmt!=null)
conn.close();
)catch(SQLException se)(
)
try(
if(conn!=null)
conn.close();
)catch(SQLException se)(
se.printStackTrace();
)
)
)
)

CreateTable.java Объяснение:

1. Сначала мы создали URL-адрес БД, в котором должно быть указано имя вашего компьютера, а также номер порта БД (в идеале 1521), перед которым стоит JDBC: oracle: thin: @. Затем мы создали имя пользователя и пароль для передачи этих атрибутов во время подключения к базе данных. Настоятельно рекомендуется зашифровать эти значения в производственной среде.

2. В классе CreateTable.java мы создали объект «am» и «a» для классов ArtistManagementDao.java и Artist.java соответственно.

3. Затем мы попытались установить наше соединение, выполнив шаги, которые мы изучили ранее, используя оператор conn.

4. Затем мы создали таблицу с именем Artist3 и обновили базу данных или передали ее в базу данных с помощью оператора execute.

5. Теперь, если мы хотим присвоить значения атрибутам, мы будем использовать объект, который мы создали для класса Artist, и запомним, что не этот класс будет вставлять значение в базу данных, скорее это будет Художник по менеджменту, класс Дао. На данный момент мы уже сохранили значения в атрибутах, и на дневном занятии мы увидим, как передать это в базу данных.

6. Наконец, мы использовали объект «am» из ArtistManagementDao, чтобы передать этот объект «a» методу addArtist () класса Java ArtistManagementDao.

7. Мы также пытались поймать блок, чтобы перехватить любые исключения и выбросить их.

ArtistManagementDao Объяснение:

1. Класс Dao помогает нам изолировать прикладной / бизнес-уровень от персистентного уровня. Обычно это реляционная база данных.

2. Сначала мы создали URL-адрес БД, который должен содержать имя вашего компьютера, а также номер порта БД (в идеале 1521), перед которым стоит JDBC: oracle: thin: @. Затем мы создали имя пользователя и пароль для передачи этих атрибутов во время подключения к базе данных. Настоятельно рекомендуется зашифровать эти значения в производственной среде.

3. Внутри метода addArtist мы попытались установить наше соединение, выполнив шаги, которые мы изучили ранее с помощью оператора conn.

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

5. В следующем операторе для тестирования у нас есть оператор get для извлечения значений из базы данных.

6. Мы также пытались поймать блок, чтобы перехватить любые исключения и выбросить их.

Рекомендуемые статьи

Это было руководство о том, как подключить базу данных в Java. Здесь мы обсудили, как подключить базу данных в Java вместе с интерфейсами и классами, используемыми для подключения базы данных. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Что такое SQL Server?
  2. Большие данные - это база данных?
  3. Как работает JavaScript
  4. Многопоточность Интервью Вопросы на Java