Як підключити базу даних на Java? - Інтерфейси та операція JDBC

Зміст:

Anonim

Як підключити базу даних на Java?

Під час написання ІТ-програми з використанням будь-якої мови програмування потік даних із та в додаток обслуговує основну функціональність. Якщо на потік даних якимось чином вплине, це може негативно вплинути на функціональність додатків і може призвести до великих втрат для бізнесу.

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

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

Що таке JDBC?

JDBC означає «Підключення до бази даних Java», і воно допомагає програмі Java виконувати різні види операцій над базою даних, такі як створення, читання, оновлення та видалення. Також JDBC - це Java API.

Використовуючи JDBC, програміст повинен мати можливість:

  • Встановіть зв’язок із базою даних
  • Запустіть команди SQL, відправивши їх у Базу даних
  • Інтерпретує результати, що надходять із бази даних

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

Перш ніж працювати з JDBC, потрібно мати базу даних, щоб підключитися до неї. Ми будемо використовувати Базу даних Oracle заради нашої ілюстрації. Завантажте програму Oracle 11g express Edition зі посилання нижче.

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

У мене вже готовий інсталятор Oracle 10g, як ви бачите нижче:

Джерело : З мого робочого столу

  • Двічі клацніть програму встановлення, нижче з'явиться екран. Клацніть далі.

Джерело : З мого робочого столу

  • Прийміть ліцензійну угоду та натисніть кнопку Далі.

Джерело : З мого робочого столу

  • Будь ласка, зберігайте налаштування за замовчуванням, як вони, і натисніть на наступний.

Джерело : З мого робочого столу

  • Він запитає пароль, який буде потрібно під час входу в екземпляр Oracle 11g. Введіть пароль і натисніть на наступний.

Джерело : З мого робочого столу

  • Після введення пароля розпочнеться процес встановлення. Після завершення встановлення на екрані робочого столу створюється ярлик ярлика. Якщо ви не в змозі його знайти, перейдіть до запуску Windows і пошукайте Oracle, ви повинні його отримати. Натисніть на нього, і він відкриє для вас тонкий клієнт через браузер. Увійдіть до інстанції. Зауважте, що ім'я користувача буде однаковим і для Oracle DB, тобто для системи. Пароль буде тим, який ви вказали під час налаштування бази даних.

Джерело: З мого робочого столу

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

Джерело: З мого робочого столу

  • Тепер давайте створимо таблицю. Будь ласка, натисніть на модуль 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. Використовуйте посилання на з'єднання для створення заяви

stmt = conn.createStatement();

5. Використовуйте оператор для виконання запиту

6. Обробіть набір результатів (необов'язково, залежить)

7. Відпустіть ресурси, нарешті, блокуйте.

Ілюстрація

Оскільки ми використовуємо базу даних Oracle для нашої ілюстрації, нам потрібно мати необхідний драйвер, який повинен надавати Oracle. Клас драйверів зазвичай складається у вигляді файлу jar з ім'ям ojdbc14.jar. Цей драйвер повинен бути імпортований до вашої програми java у складі "Посиланих бібліотек", якщо його немає.

Якщо ви встановили Oracle 11g у свою папку C, його ідеально можна знайти в нижченаведеному шляху: (Якщо його немає, його можна легко завантажити звідси)

C: \ oraclexe \ app \ oracle \ product \ 10.2.0 \ server \ jdbc \ lib

Джерело: З мого робочого столу

Має бути доступно багато файлів jar, проте ojdbc14.jar є останнім. Те ж саме можна використовувати в наших цілях. Цю банку слід додати до класу проекту. Перевірте наведене нижче зображення.

Джерело: З мого робочого столу

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

Джерело: З мого робочого столу

Як частина цієї ілюстрації, ми б створили три класи java, тобто Artist.java, CreateTable.java та ArtistManagementDao.java, щоб досягти цього.

Також у шарі java нам потрібно створити клас під назвою Artist bean. Цей клас повинен мати атрибути Виконавця з вищезазначеним контекстом. Це буде виглядати нижче:

Художник.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. Тепер, якщо ми хотіли б присвоїти значення атрибутам, ми скористаємося об'єктом, який ми створили для класу виконавців, та зробимо примітку, не цей клас введе значення у Базу даних, а це буде ArtistmanagementDao клас. На сьогоднішній день у нас вже є збережені значення в атрибутах, і ми побачимо в денному класі, як перенести це до бази даних.

6. Нарешті, ми використовували об’єкт "am" від ArtistManagementDao, щоб передати цей об'єкт "a" методу addArtist () класу ArtistManagementDao java.

7. Ми також намагалися спіймати блок для вилучення будь-яких винятків і викидання того ж.

ArtistManagementDao Пояснення:

1. Клас Дао допомагає нам ізолювати додаток / бізнес-шар від шару стійкості. Зазвичай це реляційна база даних.

2. Ми вперше створили URL-адресу БД, яка повинна мати ім'я комп'ютера, а також номер порту БД (в ідеалі 1521), перед яким JDBC: oracle: thin: @. Тоді ми створили ім'я користувача та пароль для того, щоб передавати ці атрибути під час підключення до бази даних. Настійно рекомендується зашифрувати ці значення у виробничому середовищі.

3. Усередині методу addArtist ми намагалися встановити наше з'єднання, дотримуючись кроків, які ми дізналися раніше, використовуючи оператор conn.

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

5. У наступному твердженні для тестування у нас є оператор get для отримання значень із бази даних.

6. Ми також намагалися спіймати блок для вилучення будь-яких винятків і викидання того ж.

Рекомендовані статті

Це було керівництвом про те, як підключити базу даних у Java. Тут ми обговорили, як підключити Базу даних у Java разом з інтерфейсами та класами, які використовуються для підключення бази даних. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Що таке SQL Server?
  2. Є великі дані - це база даних?
  3. Як працює JavaScript
  4. Питання для багатопотокових інтерв'ю на Java