CodeGym/Java курс/All lectures for BG purposes/Свързване към базата данни от Java приложение

Свързване към базата данни от Java приложение

На разположение

Java Database Connectivity

Знаете основите на SQL. Това е добре. Но днес ще се почувствате още по-добре. Днес ще започнете да се учите How да работите с база данни от Java приложение.

Има много различни СУБД, така че създателите на Java решиха да стандартизират How едно Java приложение работи с бази данни. И те нарекоха този стандарт - JDBC : Java DataBase Connectivity .

JDBC има 3 основни интерфейса:

  • Връзка - отговаря за свързването към базата данни
  • Изявление - отговаря за заявките към базата данни
  • ResultSet - отговаря за резултата от заявката към базата данни

Всъщност това е всичко. И дори няма да научим всички методи на всички интерфейси. Само работещи примери, които постепенно ще усложняваме.

JDBC е донякъде подобен на работата със сървлети. Създателите на JDBC са написали няколко интерфейса и гордо го наричат ​​Java DataBase API. И внедряването на тези интерфейси беше възложено на ... създателите на СУБД. Как се изпълнява там - никой не го интересува. Работи добре.

Има четири версии на JDBC и ние ще разгледаме най-новата. И не защото е най-яката, а защото е най-простата.

Мениджър на JDBC драйвери

Java приложението и базата данни комуникират помежду си чрез библиотека, наречена JDBC драйвер. Това е набор от класове, които имплементират JDBC API за определена СУБД.

Правилният JDBC драйвер се избира с помощта на клас, наречен DriverManager . Тяхното взаимодействие може да се представи по следния начин:

Работата е там, че можете да използвате In-Memory-DB, No-SQL-DB or дори база данни, вградена в приложение за Android. Като Java разработчик тези нюанси изобщо не ви засягат. Driver Manager ще избере правилния JDBC драйвер за вас и всичко ще работи като часовник.

Между другото, How го прави?

Свързване към MySQL сървър

Помните ли Howво ви е необходимо, за да се свържете с локален SQL сървър чрез MySQL Workbench? Ако съм забравил, тогава ви напомням, че имате нужда от три неща:

  • домакин
  • Влизам
  • парола

Всичко е ясно с данните за вход и парола, а хостът, ако си спомняте, е името на компютъра, на който се намира сървърът. Ако се намира на вашия локален компютър, тогава трябва да посочите localhost като име на хост. Ами ако не е местно?

След това трябва да използвате ... URL. URL означава Универсален локатор на ресурси . Може да се използва за определяне на местоположението на всичко в мрежата: сайт, принтер, SQL сървър. Всъщност URL addressът се използва и за достъп до локалния SQL сървър. Изглежда нещо подобно:

mysql://localhost:3306/db_scheme
  • mysql е сървърен протокол
  • localhost - име на хост в мрежата
  • 3306 - порт, на който се правят заявки
  • db_scheme - име на схема (име на база данни)

Забележка. Името на базата данни може да бъде пропуснато. Но ако сървърът съхранява много схеми на база данни, тогава обикновено за тях се създават различни потребители и различни права за достъп. И ако потребителят, под който влизате в SQL сървъра, няма достъп до всички бази данни, тогава определено трябва да посочите името на конкретната база данни, до която имате достъп.

В края на този url може да има различни параметри, типове codeиране, часова зона, които се считат за параметри за новата връзка с базата данни, която се установява.

Освен това протоколът може да бъде съставен. Ако цялата комуникация със сървъра на базата данни е по криптиран канал, използващ SSH протокол, тогава URL addressът може да бъде указан по следния начин:

ssh:mysql://localhost:3306/db_scheme

Протоколът не е непременно външна програма. Например, ако работите със сървър, използващ JNDI протокол, можете да го посочите по следния начин:

jndi:mysql://localhost:3306/db_scheme

И ако искате да работите с помощта на JDBC API протокола, тогава трябва да напишете така:

jdbc:mysql://localhost:3306/db_scheme

Когато се опитате да създадете връзка с база данни, JDBC Driver Manager анализира вашия SQL-db-URL и определя името на JDBC драйвера от името на протокола. Ето такъв малък трик.

Коментари
  • Популярен
  • Нов
  • Стар
Трябва да сте влезли, за да оставите коментар
Тази страница все още няма коментари