Jadual Kandungan
Apa itu Socket Java?
Bagaimana cara menulis program soket Java yang mudah?
Langkah 1: Mulakan pelayan
Langkah 2: Jalankan pelanggan
Soalan dan langkah berjaga -jaga yang sering ditanya
Mari kita meringkaskan
Rumah Java javaTutorial Asas dan contoh pengaturcaraan soket Java

Asas dan contoh pengaturcaraan soket Java

Jul 12, 2025 am 02:53 AM
pengaturcaraan

Pengaturcaraan soket Java adalah asas komunikasi rangkaian, dan pertukaran data antara pelanggan dan pelayan direalisasikan melalui soket. 1. Socket di Java dibahagikan kepada kelas soket yang digunakan oleh klien dan kelas ServerSocket yang digunakan oleh pelayan; 2. Apabila menulis program soket, anda mesti mula memulakan port pendengaran pelayan, dan kemudian memulakan sambungan oleh pelanggan; 3. Proses komunikasi termasuk penubuhan sambungan, bacaan dan penulisan data, dan penutupan aliran; 4. Nota termasuk mengelakkan konflik pelabuhan, dengan betul mengkonfigurasi alamat IP, sumber yang cukup menutup, dan menyokong beberapa pelanggan. Menguasai ini dapat merealisasikan fungsi komunikasi rangkaian asas.

Asas dan contoh pengaturcaraan soket Java

Dalam pengaturcaraan rangkaian Java, soket adalah salah satu bahagian yang paling asas dan penting. Ia membolehkan komunikasi antara dua program melalui rangkaian, LAN tempatan dan Internet. Artikel ini terutamanya bercakap tentang konsep asas pengaturcaraan soket di Java dan contoh mudah untuk membantu anda memulakan dengan cepat.

Asas dan contoh pengaturcaraan soket Java

Apa itu Socket Java?

Di Java, soket adalah mekanisme yang digunakan untuk mewujudkan sambungan dan pertukaran data antara peranti yang berbeza dalam rangkaian. Java menyediakan pakej java.net untuk menyokong komunikasi rangkaian, dua kelas teras adalah:

Asas dan contoh pengaturcaraan soket Java
  • Socket : Digunakan untuk pelanggan, menunjukkan sambungan ke pelayan.
  • ServerSocket : Digunakan untuk mendengar permintaan pelanggan dan menubuhkan sambungan.

Ringkasnya, soket adalah seperti telefon, panggilan pelanggan (bersambung), jawapan pelayan (menerima sambungan), dan kemudian kedua -dua pihak boleh bercakap (menghantar data).


Bagaimana cara menulis program soket Java yang mudah?

Mari kita gunakan contoh klasik "klien menghantar mesej, balasan pelayan" untuk menggambarkan keseluruhan proses.

Asas dan contoh pengaturcaraan soket Java

Langkah 1: Mulakan pelayan

Pelayan perlu dimulakan terlebih dahulu dan menunggu pelanggan menyambung. Anda boleh menggunakan ServerSocket untuk mendengar port.

 import java.io.*;
import java.net.*;

pelayan kelas awam {
    public static void main (string [] args) {
        cuba (serverocket serversocket = new ServerSocket (12345)) {
            System.out.println ("Pelayan telah bermula, menunggu sambungan ...");
            Soket soket = serversocket.accept (); // blok sehingga pelanggan menghubungkan System.out.println ("Client Connected");

            BufferedReader In = New BufferedReader (
                baru inputStreamReader (socket.getInputStream ()));
            PrintWriter Out = PrintWriter baru (socket.getOutputStream (), true);

            String clientMessage = in.readLine ();
            System.out.println ("Diterima:" ClientMessage);
            out.println ("Pelayan menerima mesej anda:" ClientMessage);

        } menangkap (ioException e) {
            e.printstackTrace ();
        }
    }
}

Langkah 2: Jalankan pelanggan

Pelanggan membuat contoh Socket dan menyambung ke IP dan port pelayan.

 import java.io.*;
import java.net.*;

Pelanggan Kelas Awam {
    public static void main (string [] args) {
        cuba (soket soket = soket baru ("localhost", 12345)) {
            PrintWriter Out = PrintWriter baru (socket.getOutputStream (), true);
            BufferedReader In = New BufferedReader (
                baru inputStreamReader (socket.getInputStream ()));

            out.println ("Hello, Server!");
            Tindak balas rentetan = in.readLine ();
            System.out.println ("Response:" Response);

        } menangkap (ioException e) {
            e.printstackTrace ();
        }
    }
}

Walaupun contoh ini mudah, ia meliputi langkah -langkah teras pengaturcaraan soket: menyambung, membaca dan menulis data.


Soalan dan langkah berjaga -jaga yang sering ditanya

  • Pelabuhan yang diduduki : Jika nombor port yang ditentukan telah diduduki oleh program lain, pelayan tidak akan dimulakan. Anda boleh cuba menukar nombor port, seperti antara 1024 dan 65535.
  • Ralat Konfigurasi Alamat IP : Pastikan pelanggan disambungkan ke alamat IP yang betul. Jika ia adalah ujian asli, gunakan localhost atau 127.0.0.1 .
  • Pesanan Penutupan Stream : Pastikan anda ingat untuk menutup aliran input dan output dan sambungan soket, jika tidak, kebocoran sumber mungkin berlaku.
  • Proses multithreading Pelbagai pelanggan : Contoh di atas hanya boleh mengendalikan satu pelanggan. Jika anda ingin mengendalikan pelbagai sambungan pada masa yang sama, anda perlu menggunakan Multi-Threading atau NIO.
  • Reka Bentuk Protokol : Dalam pembangunan sebenar, adalah disyorkan untuk menentukan protokol komunikasi anda sendiri, seperti menghantar data berstruktur dalam format JSON.

Mari kita meringkaskan

Pengaturcaraan soket Java tidak sukar, kunci adalah untuk memahami bagaimana model klien/pelayan berfungsi. Selepas menguasai sambungan asas dan proses membaca dan menulis data, fungsi yang lebih kompleks dapat diperluas atas dasar ini, seperti pemindahan fail, sembang masa nyata, dan lain-lain. Pada dasarnya semua itu, cubalah.

Atas ialah kandungan terperinci Asas dan contoh pengaturcaraan soket Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Apakah had transaksi untuk pengguna asing di Alipay?
1 bulan yang lalu By 下次还敢
Rimworld Odyssey Cara Ikan
1 bulan yang lalu By Jack chen
Bolehkah saya mempunyai dua akaun Alipay?
1 bulan yang lalu By 下次还敢

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1506
276
VSCODE SETTINGS.JSON Lokasi VSCODE SETTINGS.JSON Lokasi Aug 01, 2025 am 06:12 AM

Fail Tetapan.JSON terletak di laluan peringkat pengguna atau ruang kerja dan digunakan untuk menyesuaikan tetapan vscode. 1. Laluan peringkat pengguna: Windows adalah C: \ Users \\ AppData \ Roaming \ code \ user \ settings.json, macOS adalah /users//library/applicationsupport/code/user/settings.json, linux adalah/ 2. Laluan Tahap Ruang Kerja: .VSCODE/Tetapan dalam Direktori Root Projek

Contoh Kombinasi Python ITertools Contoh Contoh Kombinasi Python ITertools Contoh Jul 31, 2025 am 09:53 AM

iTertools.Combinations digunakan untuk menjana semua kombinasi yang tidak berulang (perintah tidak relevan) yang memilih bilangan elemen tertentu dari objek Itable. Penggunaannya termasuk: 1. Pilih 2 kombinasi elemen dari senarai, seperti ('a', 'b'), ('a', 'c'), dan sebagainya, untuk mengelakkan perintah berulang; 2. Ambil 3 kombinasi watak rentetan, seperti "ABC" dan "ABD", yang sesuai untuk penjanaan berikutnya; 3. Cari kombinasi di mana jumlah dua nombor adalah sama dengan nilai sasaran, seperti 1 5 = 6, memudahkan logik gelung berganda; Perbezaan antara kombinasi dan susunan terletak pada sama ada perintah itu penting, kombinasi menganggap Ab dan BA sebagai sama, sementara permutasi dianggap berbeza;

Kekunci kelantangan pada papan kekunci tidak berfungsi Kekunci kelantangan pada papan kekunci tidak berfungsi Aug 05, 2025 pm 01:54 PM

First,checkiftheFnkeysettingisinterferingbytryingboththevolumekeyaloneandFn volumekey,thentoggleFnLockwithFn Escifavailable.2.EnterBIOS/UEFIduringbootandenablefunctionkeysordisableHotkeyModetoensurevolumekeysarerecognized.3.Updateorreinstallaudiodriv

Python untuk Etl Kejuruteraan Data ETL Python untuk Etl Kejuruteraan Data ETL Aug 02, 2025 am 08:48 AM

Python adalah alat yang cekap untuk melaksanakan proses ETL. 1. Pengekstrakan data: Data boleh diekstrak dari pangkalan data, API, fail dan sumber lain melalui panda, sqlalchemy, permintaan dan perpustakaan lain; 2. Penukaran Data: Gunakan panda untuk pembersihan, penukaran jenis, persatuan, pengagregatan dan operasi lain untuk memastikan kualiti data dan mengoptimumkan prestasi; 3. Pemuatan Data: Gunakan kaedah Pandas 'TO_SQL atau platform awan SDK untuk menulis data ke sistem sasaran, perhatikan kaedah menulis dan pemprosesan batch; 4. Cadangan Alat: Airflow, Dagster, Prefect digunakan untuk penjadualan dan pengurusan proses, menggabungkan penggera log dan persekitaran maya untuk meningkatkan kestabilan dan mengekalkan.

Pergi dengan contoh contoh pembalakan middleware http Pergi dengan contoh contoh pembalakan middleware http Aug 03, 2025 am 11:35 AM

HTTP Log Middleware di GO boleh merakam kaedah permintaan, laluan, IP klien dan memakan masa. 1. Gunakan http.handlerfunc untuk membungkus pemproses, 2. Rekod waktu mula dan masa akhir sebelum dan selepas memanggil next.servehttp, 3. Dapatkan IP pelanggan sebenar melalui r.remoteaddr dan X-forward-for headers, 4. Gunakan log.printf untuk mengeluarkan log permintaan, 5. Kod sampel lengkap telah disahkan untuk dijalankan dan sesuai untuk memulakan projek kecil dan sederhana. Cadangan lanjutan termasuk menangkap kod status, menyokong log JSON dan meminta penjejakan ID.

Penonton pdf tepi tidak berfungsi Penonton pdf tepi tidak berfungsi Aug 07, 2025 pm 04:36 PM

Testthepdfinanotherapptodetermineiftheisseiswiththefileoredge.2.enableTetHEBuilt-Inpdfviewerbyturningoff "AlwaysopenpdffileseXternally" dan "muat turun" inedgesettings.3.clearbrowsdataincludingcookiesandcookiescookiesandcookiescookiesandcookiescookieshincookieshincookiescookiescookiescookiescookiescookiescookiescookiescookiescokiescookiescookiescookiescookiescookiescooker

Google Chrome tidak dapat membuka fail tempatan Google Chrome tidak dapat membuka fail tempatan Aug 01, 2025 am 05:24 AM

Chromecanopenlocalfileslikehtmlandpdfsbyusing "openfile" ordraggingthemintothebrowser; ensureTheaddressStartSwithFile: ///; 2.securityRestrictionsblockajax, localStorage, andcross-folderacSonfile:/ealerSoR.

Contoh Perlawanan Python Pytest Contoh Perlawanan Python Pytest Jul 31, 2025 am 09:35 AM

Perlawanan adalah fungsi yang digunakan untuk menyediakan persekitaran atau data pratetap untuk ujian. 1. Gunakan penghias @pytest.fixture untuk menentukan perlawanan; 2. Suntikan perlawanan dalam bentuk parameter dalam fungsi ujian; 3. Melaksanakan persediaan sebelum hasil, dan kemudian Teardown; 4. Skop kawalan melalui parameter skop, seperti fungsi, modul, dan lain -lain; 5. Letakkan perlawanan bersama dalam conftest.py untuk mencapai perkongsian silang fail, dengan itu meningkatkan kebolehkerjaan dan kebolehgunaan semula ujian.

See all articles