Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мережеві_технології_java_1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
425.98 Кб
Скачать

2. Послідовність виконання роботи

  1. Написати фрагменти програм доступу до СУБД,

  2. Написати фрагменти формування запитів, отримання таблиць – результатів запитів, перенесення результатів у поля веб – сторінки.

  3. Скласти проект системи формування бажаних таблиць для кожного клієнта.

3. Завдання до лабораторної роботи

  1. Створити базу даних, що містить декілька таблиць.

  2. Запрограмувати доповнення записів даних в таблицях.,

  3. Запрограмувати видалення записів даних.

  4. Запрограмувати фільтрацію даних.

  5. Написати фрагменти програм доступу до СУБД, формуваннязапитів, отримання таблиць –результатів запитів, перенесення результатів

4. Контрольні питання

1. Які класи відповідають за формування результуючих таблиць?

2. В чому полягає модульність програм доступу до баз даних?

3. Чому при доступі до баз даних необхідно використовувати блок try ?

4. Як формувати доступ до баз даних?

Лабораторна робота №5

Тема: створення клієнт/серверних програм за допомогою бібліотек Java.

Мета: навчитись концепціям програмування мовою JAVA, а також засвоїти основні стандартні класи і методи бібліотек java.net, java.io.

1. Класи клієнтів

Багато програмних засобів для Інтернету базуються на використанні TCP/IP протоколу. Цей протокол побудований на основі використання мережевих з’єднань – з’єднання спочатку налагоджується, потім здійснюється передача даних, а після цього з’єднання переривається. При створенні серверної програми використовується мережеве з’єднання до програм, що знаходяться на інших комп’ютерах. При з’єднанні відкривається порт з деяким стандартним номером і програма переходить в стан очікування на під’єднання клієнтських програм. При здійсненні з’єднання між клієнтом і сервером останній пропонує першому продовжити взаємодію через порт з іншим номером (ефемерним портом). Через звільнений порт зі стандартним номером будуть встановлюватись нові зв’язки. Номери портів TCP/IP призначаються комітетом IANA (Internet Assigned Numbers Authority). Стандартні номери знаходяться в діапазоні 1÷1023, ефемерні – 1024÷5000.

TCP/IP– сокети (socket) – порти комп’ютерів – використовуються для реалізації двонаправлених з’єднань між двома вузлами мережі Інтернет. Сокети дозволяють організувати взаємодію повноцінних програм і аплетів Java через мережу Internet. Це створює можливості опрацювання інформації за схемою клієнт– сервер, де в ролі сервера може виступати комп'ютер, під’єднаний до мережі, а не тільки Web–сервер. Робоча станція може виступати одночасно у ролі сервера чи клієнта.

Внутрішні деталі мережевого спілкування абстраговані й обробляються всередині системою JVM локальної машини, на якій встановлене середовище Java. Модель програмування полягає в накладанні оболонки (потоковим об'єктом) мережного під'єднання "сокет" і використанні методів для потокових об'єктів. Вбудована в Java множинність процесів є зручною для спілкуванні в мережі завдяки встановлення декількох з'єднань відразу.

Мова Java підтримує два типи мережевих з’єднань – клієнтські, що реалізуються з допомогою об’єктів класу Socket , та серверні, що реалізуються з допомогою об’єктів класу ServerSocket. Клас Socket використовується як проміжна ланка між програмами введення - виведення на комп’ютері та лінією зв’язку .

Клас Socket призначений для створення об’єктів, відповідальних за з’єднання зі сторони клієнта. Недоступність з’єднання трактується як помилка. Об’єкти можна створити з допомогою двох конструкторів:

Socket(String host, int port) – при створенні об’єкту встановлюється з’єднання між локальним комп’ютером та вказаним портом вузла мережі Інтернет за його іменем. При виявленні помилки генеруються виняткові ситуаціїї типів UnknownHostException та IOException.

Socket(InetAddress address, int port) – при створенні об’єкту встановлюється з’єднання між локальним комп’ютером та вказаним портом вузла мережі Інтернет за його адресою у виді об’єкту класу InetAddress. При виявленні помилки генеруються виняткові ситуації типу IOException.

Методи об’єкту класу Socket дозволяють отримувати наступну інформацію про локальний та віддалений комп’ютери:

getInetAddress – повертає вказівник на об’єкт типу InetAddress, зв’язаний з даним об’єктом класу Socket;

getPort – повертає номер порту на віддаленому вузлі;

getLocalPortповертає номер локального порту, призначеного для об’єкту типу Socket;

Після створення об’єкту класу Socket його методами можна отримувати доступ до вхідного та вихідного потоків даних:

getInputStream – повертає об’єкт вхідного потоку InputStream, призначений до об’єкту класу Socket;

getOutputStream – повертає об’єкт вихідного потоку OutputStream, призначений до об’єкту класу Socket;

close – закриття вхідного та вихідного потоків об’єкту типу Socket.

Наведемо прикла клієнта :

Клієнт:

import java.net.*; // підтримка клієнт серверних функцій

import java.io.*; // підтримка функцій вводу виводу

public class MyClient {

class Session extends Thread {

Socket socket; // отримання сокет сесії

public Session(Socket s) {socket = s;}

public void run(){

// процедура для прийняття, обробки читання на виводу на екран

// потоків вводу виводу прийнятих від сервера

}

public MyClient(){ // конструктор – початкова ініціалізація

try{

Socket clientSocket = new Socket("127.0.0.1",(<номер порта>);

Session ses = new Session(clientSocket); //

ses.start(); // запуск треда сесії для асинхронного прийняття

// інформації

// процедура створення, обробки та відправки потоків вводу виводу

clientSocket.close(); // закриття сокету

} catch (Exception e){System.out.println(e);}

}

public static void main(String arg[])

{

new MyClient();

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]