java实现socket通信
来源:互联网 发布:mac for ntfs破解版 编辑:程序博客网 时间:2024/05/09 19:52
java实现socket服务器与客户端的通信,此处只用示例代码说明
服务器端代码
主程序:
package netWork;import java.io.IOException;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class Service {public static int i = 1;public static void main(String[] args) throws IOException {// TODO Auto-generated method stubServerSocket serverSocket = new ServerSocket(5202);Socket socket = null;while(true){socket = serverSocket.accept();System.out.println("客户端"+(i++)+"连接成功");Runnable runnable = new MyRunnable(socket);thread thread = new Thread(runnable);thread.start();}}
多线程:
package netWork;import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.Socket;public class MyRunnable implements Runnable{private Socket socket;String [] advices={"多吃水果","少吃垃圾食品","早睡早起","多运动","多出去走走","出去玩玩啊"};public MyRunnable(Socket socket) {// TODO Auto-generated constructor stubthis.socket = socket;}@Overridepublic void run() {// TODO Auto-generated method stubString advice = getAdvice();try {InputStreamReader inputStreamReader = new InputStreamReader(socket.getInputStream(),"UTF-8");BufferedReader bufferedInputStream = new BufferedReader(inputStreamReader);PrintWriter printWriter = new PrintWriter(socket.getOutputStream());//while(true){String mString = bufferedInputStream.readLine();System.out.println("这是来自客户端信息: "+mString);printWriter.println("这是来自服务器的信息: "+advice);printWriter.flush();//}catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}try {socket.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}private String getAdvice() {// TODO Auto-generated method stubint random = (int)(Math.random()*advices.length);return advices[random];}}
客户端代码
package com.myfirstprac;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.net.Socket;import java.net.UnknownHostException;public class Cdateinfo {public void go() throws UnknownHostException, IOException {Socket socket = new Socket("127.0.0.1", 5202);PrintWriter printWriter = new PrintWriter(socket.getOutputStream());InputStreamReader inputStreamReader = new InputStreamReader(socket.getInputStream(),"UTF-8");BufferedReader bufferedReader = new BufferedReader(inputStreamReader);printWriter.println("hh,我是客户端");printWriter.flush();String msg = bufferedReader.readLine();System.out.println(msg);printWriter.close();socket.close();}public static void main(String[] args) throws UnknownHostException, IOException {// TODO Auto-generated method stubCdateinfo cdateinfo = new Cdateinfo();cdateinfo.go();}}
0 0
- java通信socket实现
- java实现socket通信
- Java socket 实现tcp通信
- Java socket 实现tcp通信
- java Socket通信实现步骤
- Socket 通信实现 Flash 与Java连接
- Java Socket通信实现文件传输/图片传输
- java nio socket实现多线程多用户通信
- Java实现简单的socket通信
- java socket类实现网络通信
- Java简单实现Socket非阻塞通信
- java socket实现全双工通信
- Java Socket通信实现文件传输/图片传输
- java实现多线程的socket通信技术
- Java 用socket实现网络通信
- Java之Socket编程实现一对一通信
- Java简单实现Socket非阻塞通信
- java实现简单的Socket通信
- Android-使用Android Studio实现第三方QQ登录
- 模板模拟实现栈
- python 字符串格式化
- 我们为什么要学习LINUX?
- linux学习笔记
- java实现socket通信
- hdu 5410 CRB and His Birthday(01 背包+多重背包)
- 扫瞄线填充算法 AND 高斯抗锯齿算法
- Codeforces Round #402 (Div2)D题
- ajax学习笔记
- Python Selenium使用IE
- 我是正经的第一篇!
- POJ 2718 Smallest Difference
- 贪心算法