... Soketga kirish
Nest umumiy ko'rinishi
Aloqa soketining aloqa printsipi
③ java.net to'plami
2. TCP protokoli asosida dasturlash soketi
Mijoz va Server tomoni o'rtasida ikki tomonlama xavfsiz ulanishga erishish uchun foydalaniladigan java.netSocket va ServerSocket ikkita paket sinflari TCP protokoliga asoslangan. Bu telefon qo'ng'irog'i kabi ishlaydi. Faqat ikkala tomon ulanganda qo'ng'iroq boshlanishi mumkin.
Tarmoqqa ulanishni amalga oshirishda Socket ma'lumotlar uzatishni yakunlash uchun ma'lumotlar oqimidan foydalanishi kerak. Agar dastur tarmoq orqali boshqa dasturga ma'lumot yubormoqchi bo'lsa, shunchaki rozetka yarating va keyin ma'lumotlarni rozetka bilan bog'langan chiqish oqimiga yozing. Shunga ko'ra, qabul qiluvchi ilova rozetka yaratadi va mos keladigan kirish oqimidan ma'lumotlarni o'qiydi.Ref: Soket dasturlash yordamida foydalanuvchi login
Soket aloqa modeli quyidagicha ko'rinadi:
Eslatma. TCP soket dasturlashda ikkita so'nggi nuqta ko'pincha mijoz va serverdir. Bu mijoz-server modeli.
Soket sinfi
Soket mijoz va server o'rtasida aloqa o'rnatadi. Konstruktor rozetka yaratadi va bu rozetkani belgilangan xost va portga ulaydi. Quyida konstruktorlar va ushbu Socket obyekti bilan bog'liq bo'lgan ba'zi umumiy usullar keltirilgan.
a, qurilish usuli
Birinchi qurish usuli parametr sifatida host nomi va port raqami bilan Socket yaratadi. Konstruktorlar UnKnownHostException yoki IOException-ni tashlashi mumkin va ularni ushlashi va boshqarishi kerak.
Boshqa qurish usuli Socket obyektini yaratish uchun parametr sifatida InetAddress obyekti va port raqamini oladi. Konstruktorlar UnKnownHostException yoki IOException-ni tashlashi mumkin va ularni ushlashi va boshqarishi kerak.
② ServerSocket klassi
ServerSocket ob'ekti mijozning ulanishni o'rnatishini kutadi va ulanish o'rnatilgandan so'ng ulanishni o'rnatadi.
a, qurilish usuli
Birinchi konstruktor ServerSocket obyektini yaratish uchun parametr sifatida port raqamini oladi. Ushbu ob'ektni yaratish qo'lga olinishi va qayta ishlanishi kerak bo'lgan IOExceptionni tashlashi mumkin.
Boshqa qurilish usuli parametr sifatida port raqami va maksimal navbat uzunligini oladi. Navbat uzunligi tizim ulanishni rad etishdan oldin bo'lishi mumkin bo'lgan mijoz ulanishlarining maksimal sonini ko'rsatadi.
b) umumiy usullar
Socket sinfida keltirilgan usullar ServerSocket sinfiga ham tegishli. Bundan tashqari, ServerSocket sinfida mijozning ulanishni boshlashini kutish uchun qabul qilingan () usuli mavjud, shunda Socket ma'lumotlarni keyingi uzatish uchun ishlatilishi mumkin.
3.UDPni alohida dasturlash
TCP-ga asoslangan tarmoq xavfsiz va ikki tomonlama. 10086 telefon raqamini terishda bo'lgani kabi, server talab qilinadi. Ma'lumot uzatish ikki tomonlama ulanish o'rnatilgandan so'ng boshlanadi. UDP tarmog'i boshqacha. Siz faqat boshqa tomonning manzilini ko'rsatishingiz kerak. , Va keyin ma'lumotlarni oldindan ulanmasdan yuboring. Bunday tarmoq aloqasi ma'lumotlari chat tizimlari kabi ilovalar uchun xavfsiz emas. Konsalting tizimi va boshqalar.
datagram Bu havolani ifodalovchi xabar turi. Aloqa uchun datagramlardan foydalanganda ulanishni o'rnatish jarayonini amalga oshirishning hojati yo'q, u UDP protokoliga asoslanadi.
Java-da datagramlar yordamida muloqot qila oladigan ikkita sinf mavjud, ya'ni DatagramPacket va DatagramSocket.
DatagramPacket klassi ma'lumotlar konteyneri vazifasini bajaradi.
DatagramSocket klassi DatagramPacket yuborish yoki qabul qilish uchun ishlatiladi.
DatagramPacket klassi ma'lumotlarni jo'natish yoki qabul qilish usullarini ta'minlamaydi, DatagramSocket klassi esa rozetka orqali datagrammalarni yuborish va qabul qilish uchun yuborish () va qabul qilish () usullarini taqdim etadi.
DataPacket klassi
a, qurilish usuli
Do'stlaringiz bilan baham: |