Ketahui semua tentang Pengaturcaraan Socket di Java



Pengaturcaraan Java Socket digunakan untuk komunikasi antara aplikasi yang berjalan pada JRE yang berbeda. Pengaturcaraan Java Socket boleh berorientasikan sambungan atau tanpa sambungan.

Pengaturcaraan soket di digunakan untuk komunikasi antara aplikasi yang berjalan dengan berlainan . Ia boleh berorientasikan sambungan atau tanpa sambungan. Secara keseluruhan, soket adalah cara untuk menjalin hubungan antara pelanggan dan pelayan. Dalam artikel ini, saya akan memberitahu anda semua mengenai Pengaturcaraan Soket.

Topik di bawah ini dibahas dalam artikel ini:





susun atur c ++ menaik

Apa itu Pengaturcaraan Socket di Java?

Pengaturcaraan soket adalah cara menghubungkan dua nod pada rangkaian untuk berkomunikasi antara satu sama lain. Satu soket (node) mendengar pada port tertentu di IP, sementara yang lain soket menghubungi yang lain untuk menjalin hubungan.

Komunikasi Pelayan Pelanggan - Pengaturcaraan Soket di Java - Edureka



Pelayan membentuk pendengar soket sambil pelanggan menjangkau pelayan. Soket dan Soket Pelayan digunakan untuk pengaturcaraan soket berorientasikan sambungan.

Sekarang mari kita fahami konsep teras Pengaturcaraan Soket iaitu soket.

Apa itu Socket di Java?

KE soket dalam adalah satu titik akhir hubungan komunikasi dua hala antara dua program yang berjalan di rangkaian. A soket terikat dengan nombor port sehingga lapisan TCP dapat mengenal pasti aplikasi yang akan dikirimkan oleh data.



Titik akhir adalah gabungan alamat IP dan nombor port. Pakej di platform Java menyediakan kelas,Soketyang menerapkan satu sisi hubungan dua arah antara program Java anda dan program lain di rangkaian. Kelas berada di atas pelaksanaan yang bergantung pada platform, menyembunyikan perincian sistem tertentu dari program Java anda. Dengan menggunakan kelas dan bukannya bergantung pada kod asli, anda dapat berkomunikasi melalui rangkaian secara bebas platform.

Sekarang anda tahu, apa itu Socket di Java, mari kita bergerak lebih jauh dan memahami bagaimana klien berkomunikasi dengan pelayan dan bagaimana pelayan bertindak balas.

Pengaturcaraan Sampingan Pelanggan

Dalam kes pengaturcaraan pelanggan, pelanggan akan menunggu pelayan bermula. Setelah pelayan aktif dan beroperasi, ia akan menghantar permintaan ke pelayan. Selepas itu, pelanggan akan menunggu respons dari pelayan. Jadi, ini adalah keseluruhan logik komunikasi pelanggan dan pelayan. Sekarang mari kita fahami pengaturcaraan sisi pelanggan dan pelayan secara terperinci.

Untuk memulakan permintaan pelanggan, anda perlu mengikuti langkah-langkah yang disebutkan di bawah:

1. Menjalin Sambungan

Langkah pertama adalah mewujudkan sambungan soket. Sambungan soket menunjukkan bahawa kedua mesin mempunyai maklumat mengenai lokasi rangkaian (Alamat IP) dan port TCP masing-masing.

Anda boleh membuat Socket dengan bantuan pernyataan di bawah:

Soket soket = Soket baru ('127.0.0.1', 5000)

  • Di sini, hujah pertama mewakili Alamat IP Pelayan .

  • Hujah kedua mewakili Pelabuhan TCP . (Ini adalah angka yang menunjukkan aplikasi mana yang harus dijalankan di pelayan.)

2. Komunikasi

Untuk berkomunikasi melalui sambungan soket, aliran digunakan untuk input dan output data. Setelah membuat sambungan dan menghantar permintaan, anda perlu menutup sambungan.

cari nombor terbesar dalam satu array

3. Menutup sambungan

Sambungan soket ditutup secara eksplisit sebaik sahaja mesej ke pelayan dihantar.

Sekarang mari kita lihat bagaimana menulis program Java untuk melaksanakan sambungan soket di sisi klien.

// Program Java untuk ClientSide import java.net. * Import java.io. * kelas awam ClientProgram {// menginisialisasi soket dan input output mengalir soket Soket peribadi = input kosong DataInputStream = nol peribadi DataOutputStream untuk meletakkan alamat ip dan port awam Client (String address, int port) {// buat sambungan cuba {socket = new Socket (address, port) System.out.println ('Connected') // mengambil input dari terminal input = DataInputStream baru (System.in) // menghantar output ke soket keluar = DataOutputStream baru (socket.getOutputStream ())} tangkapan (UnknownHostException u) {System.out.println (u)} tangkapan (IOException i) {System.out .println (i)} // string untuk membaca mesej dari input String line = '' // teruskan membaca sehingga 'Over' dimasukkan semasa (! line.equals ('Over')) {cuba {line = input.readLine ( ) out.writeUTF (line)} catch (IOException i) {System.out.println (i)}} // tutup sambungan cuba {input.close () out.close () socket.close ()} catch (IOException i ) {System.out.println (i)}} public static void main (String args []) {Client client = new Client ('127.0.0.1', 5000)}}

Sekarang, mari kita laksanakan pengaturcaraan sisi pelayan dan kemudian sampai pada output.

Pengaturcaraan Sisi Pelayan

Pada dasarnya, pelayan akan membuat objek dan menunggu permintaan pelanggan. Setelah pelanggan menghantar permintaan, pelayan akan berkomunikasi kembali dengan respons.

Untuk membuat kod aplikasi sisi pelayan, anda memerlukan dua soket dan ia adalah seperti berikut:

  • KE ServerSocket yang menunggu permintaan pelanggan (ketika pelanggan membuat Socket baru ())

  • Lama biasa soket untuk komunikasi dengan pelanggan.

Selepas ini, anda perlu berkomunikasi dengan pelanggan dengan tindak balas.

Komunikasi

getOutputStream () kaedah digunakan untuk menghantar output melalui soket.

Tutup Sambungan

Penting untuk menutup sambungan dengan menutup soket serta aliran input / output setelah semuanya selesai.

Sekarang mari kita lihat bagaimana menulis program Java untuk melaksanakan sambungan soket di sisi pelayan.

// Program Java untuk java.net import Serverside. * Import java.io. * ServerSide kelas awam {// inisialisasi soket dan aliran input soket Soket peribadi = pelayan ServerSocket peribadi null = dataInputStream peribadi kosong di = null // konstruktor dengan port public Server (int port) {// memulakan pelayan dan menunggu sambungan cuba {server = ServerSocket baru (port) System.out.println ('Server start') System.out.println ('Menunggu pelanggan .. . ') socket = server.accept () System.out.println (' Client accept ') // mengambil input dari soket klien di = baru DataInputStream (baru BufferedInputStream (socket.getInputStream ())) Garis rentetan =' '/ / membaca mesej dari pelanggan sehingga 'Over' dihantar semasa (! line.equals ('Over')) {cuba {line = in.readUTF () System.out.println (line)} catch (IOException i) {System. out.println (i)}} System.out.println ('Closing connection') // tutup sambungan socket.close () in.close ()} catch (IOException i) {System.out.println (i)}} utama kekosongan awam (String args []) { Pelayan pelayan = Pelayan baru (5000)}}

Setelah mengkonfigurasi kedua-dua hujung pelanggan dan pelayan, anda boleh menjalankan program sisi pelayan terlebih dahulu. Selepas itu, anda perlu menjalankan program sisi pelanggan dan menghantar permintaan. Sebaik sahaja permintaan dihantar dari hujung pelanggan, pelayan akan bertindak balas. Gambar di bawah menunjukkan perkara yang sama.

1. Apabila anda menjalankan skrip sisi pelayan, ia akan bermula dan menunggu klien memulakannya.

2. Seterusnya, klien akan berhubung dan memasukkan permintaan dalam bentuk rentetan.

3. Semasa pelanggan menghantar permintaan, pelayan akan bertindak balas.

Itulah bagaimana anda perlu menjalankan program soket di Java. Anda juga dapat menjalankan program ini pada tetingkap terminal atau command prompt. Tetapi, kerana Eclipse lebih maju dengan ciri-cirinya, anda hanya dapat menjalankan kedua-dua program pada konsol.

siri fibonacci rekursi di java

Ini membawa kita ke akhir artikel mengenai Pengaturcaraan Socket di Java. Saya harap saya telah memberikan sedikit pengetahuan kepada anda Pengaturcaraan Socket.

Lihat oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia. Kami di sini untuk membantu anda dalam setiap langkah dalam perjalanan anda, kerana selain daripada soalan wawancara java ini, kami menyediakan kurikulum yang dirancang untuk pelajar dan profesional yang ingin menjadi Pembangun Java.

Ada soalan untuk kami? Harap sebutkan di bahagian komen dari artikel 'Pemrograman Soket di Jawa' ini dan kami akan menghubungi anda secepat mungkin.