Java如何實現簡單后臺訪問并獲取IP
后臺服務端
import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket; public class Server { public static void main(String[] args) throws IOException { ServerSocket s = new ServerSocket(1122);//服務器端口號 Socket ss = s.accept();// 獲取IP訪問者IP地址 String cip = ss.getInetAddress().getHostAddress();// 接收信息獲取訪問姓名身份同時向訪問者問好 String msg = String.format('%s:Hellosn', 'wo', cip); OutputStream os = ss.getOutputStream(); PrintWriter out = new PrintWriter(os); out.write(msg); out.flush(); System.out.println('有人連線了: ' + cip);// 讀取信息 InputStream is = ss.getInputStream(); System.out.println(new String(is.readAllBytes())); System.out.println(ss.isConnected()); os.close(); }}
客戶端
import java.io.*;import java.net.Socket;public class Client { public static void main(String[] args) throws IOException { Socket client = new Socket('192.168.1.16', 1122);//服務器端口號1122,IP也可以自定義訪問也可以在IP那里輸入localhost訪問本機 if (client.isConnected()) {// 接收信息 InputStream is = client.getInputStream(); BufferedReader br=new BufferedReader(new InputStreamReader(is)); System.out.println(br.readLine());//向服務器發送個人信息 String msg = '學生:xxxrn';//名字可以定義 OutputStream os = client.getOutputStream(); os.write(msg.getBytes()); os.flush(); System.out.println(client.isConnected()); System.out.println(client.isClosed()); is.close(); os.close(); } }}
后臺接收的信息
客戶端接收的信息
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. 解決Android Studio 格式化 Format代碼快捷鍵問題2. php解決注冊并發問題并提高QPS3. JavaEE SpringMyBatis是什么? 它和Hibernate的區別及如何配置MyBatis4. Java使用Tesseract-Ocr識別數字5. Springboot 全局日期格式化處理的實現6. Python使用urlretrieve實現直接遠程下載圖片的示例代碼7. SpringBoot+TestNG單元測試的實現8. JavaScript實現頁面動態驗證碼的實現示例9. vue實現web在線聊天功能10. 完美解決vue 中多個echarts圖表自適應的問題
