9. laboratoriya ishi mavzu: Javafx yordamida tarmoq dasturini yaratish Ishning maqsadi



Yüklə 35,91 Kb.
səhifə2/3
tarix07.01.2024
ölçüsü35,91 Kb.
#207529
1   2   3
Mavzu Javafx yordamida tarmoq dasturini yaratish Ishning maqsad-hozir.org

public class JavafxSample extends Application {

@Override

public void start(Stage primaryStage) throws Exception {

/*

Code for JavaFX application.

(Stage, scene, scene graph)

*/

}

public static void main(String args[]){

launch(args);

}


Kliyentning birinchi o‘rinda bajaradigan vazifasi server bilan aloqa 
o‘rnatishdan iborat. Server va kliyent o‘rtasida aloqa o‘rnatish uchun Socket
obyekti yaratiladi. TCP soketi kliyentining ilovasini yaratish uchun quyidagi 
vazifalarni bajaradi:
1. Socket obyektidan foydalanib, kliyent soketini yaratish. 
2. Soketga yozish va undan o‘qish.
3. Ulanishni tugallash. 


Kliyent soketini yaratish 
Kliyent soketining obyekti server tomonidan eshitiladigan ikki parametr (IP 
adres va port raqami)ni qabul qiluvchi Socket klassining konstruktori yordamida
yaratiladi. 


Socket clientSocket = new Socket("127.0.0.1", 7777); 
Avvalgi kod fragmentida 127.0.0.1 ga teng bo‘lgan IP adres va 7777-port 
shunday soketni aniqlaydiki, ushbu soketda server kliyent so‘rovlarini eshitadi.

Soketdan o‘qish va yozish 



4
Kliyent va server o‘rtasida ulanish o‘rnatilganidan so‘ng kliyent serverga 


soket orqali so‘rov yuboradi. Soketdan o‘qish va yozish fayldan o‘qish va yozishga


o‘xshash. Kliyentga server bilan o‘zaro aloqada ishlashni ta’minlash uchun 
quyidashilarni bajarish zarur:
PrintStream va BufferedReader klasslari har biri uchun ikkita obyekt e’lon 
qilinadi. Ushbu obyektlar soketdan o‘qish va yozish uchun ishlatiladi.

DataOutputStream outToServer = new 

DataOutputStream(clientSocket.getOutputStream()); 

BufferedReader inFromServer = new BufferedReader(new 

InputStreamReader(clientSocket.getInputStream()));
Socket klassining getInputStream() va getOutputStream() metodlari 
kliyentga server bilan o‘zaro aloqada ishlash imkonini beradi. getInputStream()
metodi BufferedReader obyektiga soketdan o‘qish, getOutputStream() metodi esa 
DataOutputStream obyektiga soketga yozish imkonini beradi.
Kliyent ilovasida kiritilgan ma’lumotlar serverga uzatilishi uchun standart 
kirish bilan aloqa o‘rnatish uchun BufferdReader klassining yana bir obyekti e’lon
qilinadi. Quyidagi kod fragmenti konsol oynasidan ma’lumotlarni o‘qish uchun 
ishlatiladi:

BufferedReader inFromUser = new BufferedReader(new 

InputStreamReader(System.in)); 
Keltirilgan kod fragmenti foydalanuvchiga klaviaturadan ma’lumotlarni 
kiritish imkonini beradi.
Ulanishni tugallash uchun clientSocket.close() metodidan foydalaniladi. 


TCP serverini yaratish 
Serverni ishlab chiqish jarayoni ma’lum portdan kliyentlarning ulanish 
o‘rnatish so‘rovlarini “eshitadigan” ServerSocket klass obyektini yaratishdan
iborat. Server ruxsat etilgan so‘rovni taniganidan so‘ng ServerSocket obyekti 
kliyent yaratgan Socket obyektini qabul qiladi. Server va kliyent o‘rtasidagi o‘zaro
aloqa ushbu soketdan foydalanish bilan amalga oshiriladi. 


5
java.net.* paketining ServerSocket klassi shunday obyektni yaratishda 


ishlatiladiki, uning yordamida server masofadagi kirish so‘rovlarini eshitadi.


BufferedInputStream klassi kliyentdan serverga ma’lumotlar uzatilishini 
boshqaradi, DataOutputStream klassi esa serverdan kliyentgacha ma’lumotlar
uzatilishini boshqaradi. 
accept() metodi o‘zi ulangan portni eshitish bilan kliyentning ulanishini
kutadi. Kliyent serverning soketi bilan ulanishga harakat qilganida, metod 
ulanishni qabul qiladi va kliyent soketini qaytaradi, so‘ngra esa ushbu soket kliyent
tomonidan server bilan muloqot uchun ishlatiladi. Ushbu soketning chiquvchi 
oqimi ulangan kliyent uchun kiruvchi oqim bo‘lib hisoblanadi va aksincha.
IOException holati ulanish o‘rnatish vaqtida qandaydir xatolik yuzaga kelganida 
generatsiyalanadi. Java yuzaga kelayotgan istisno holatlarni qayta ishlashga majbur
qiladi.

TCP serverining server ilovasini yaratish uchun quyidagilarni bajarish kerak:


-

ServerSocket serverining soket obyektini yaratish;


-

Kliyentning ulanish so‘rovlarini eshitish;


-

Serverni ishga tushirish;


-

Kliyentlarning so‘rovlari uchun ulanish oqimini yaratish.



Serverni yaratish 
ServerSocket obyekti kliyentlarning so‘rovlarini “eshitadi” va Server 
klassining konstruktori ServerSocket obyektini yaratadi. Serverni ishga tushirishda
istisno holat yuzaga kelganida xatolik to‘g‘risidagi xabar aks ettiriladi. Server 
konstruktori uchun kod fragmenti quyidagi ko‘rinishga ega:
9.1- jadval 
Topshiriq variantlari


Topshiriq 


1.

Ixtiyoriy matnni teskari tartibda yozish
2.

Ixtiyoriy n ta sondan musbatlari yig‘indisini hisoblash 


3.

Ixtiyoriy n ta sonning yig‘indisini hisoblash


4.

Uchburchakning bissektrisa uzunligini topish 


5.

Ixtiyoriy kubning hajmini topish





6



Yüklə 35,91 Kb.

Dostları ilə paylaş:
1   2   3




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin