网络编程_TCP_Socket通信原理_多个客户端_聊天室原理JAVA189-190
来源:互联网 发布:网络教育本科毕业条件 编辑:程序博客网 时间:2024/06/06 13:42
来源:http://www.bjsxt.com/
一、S02E189_01网络编程_TCP_Socket通信原理
基于tcp:面向连接 安全可靠 效率低 类似于打电话
一:面向连接:请求-响应 Request-Response
二:Socket编程
1、服务器:ServerSocket
2、客户端:Socket
package com.test.net.tcp.socket;import java.io.DataOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;/** * 必须先启动服务器后连接 * 1、创建服务器,指定端口 ServerSocket(int port) * 2、接收客户端连接,阻塞式 * 3、发送数据+接收数据 */public class Server { public static void main(String[] args) throws IOException { //1、创建服务器,指定端口 ServerSocket(int port) ServerSocket server = new ServerSocket(8888); //2、接收客户端连接,阻塞式 Socket socket = server.accept();//这是request请求,一定时间内没有响应返回错误 System.out.println("一个客户端建立连接"); //3、发送数据 String msg = "欢迎使用"; //输出流 /* BufferedWriter bw = new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())); bw.write(msg); bw.newLine();//String echo = br.readLine();//阻塞式,没有行结束符,会报异常 bw.flush();//不要关闭流,服务器是24小时工作的 */ DataOutputStream dos = new DataOutputStream(socket.getOutputStream()); dos.writeUTF(msg); dos.flush(); }}
package com.test.net.tcp.socket;import java.io.DataInputStream;import java.io.IOException;import java.net.Socket;import java.net.UnknownHostException;/** * 1、创建客户端,必须指定服务器+端口,此时就在连接 Socket(String host,int port) * 2、接收数据+发送数据 */public class Client { public static void main(String[] args) throws UnknownHostException, IOException { //1、创建客户端,必须指定服务器+端口,此时就在连接 Socket(String host,int port) Socket client = new Socket("localhost",8888); //2、接收数据 /* BufferedReader br = new BufferedReader( new InputStreamReader(client.getInputStream())); String echo = br.readLine();//阻塞式,没有行结束符,会报异常 System.out.println(echo); */ DataInputStream dis = new DataInputStream(client.getInputStream()); String echo = dis.readUTF(); System.out.println(echo); }}
二、S02E190_01网络编程_TCP_Socket通信、多个客户端、聊天室原理
package com.test.net.tcp.socket;import java.io.DataOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;/** * 必须先启动服务器后连接 * 1、创建服务器,指定端口 ServerSocket(int port) * 2、接收客户端连接,阻塞式 * 3、发送数据+接收数据 * * 接收多个客户端 */public class MultiServer { public static void main(String[] args) throws IOException { //1、创建服务器,指定端口 ServerSocket(int port) ServerSocket server = new ServerSocket(8888); //2、接收客户端连接,阻塞式 while(true){//死循环,一个accept()一个客户端 Socket socket = server.accept();//这是request请求,一定时间内没有响应返回错误 System.out.println("一个客户端建立连接"); //3、发送数据 String msg = "欢迎使用"; //输出流 DataOutputStream dos = new DataOutputStream(socket.getOutputStream()); dos.writeUTF(msg); dos.flush(); } }}
1 0
- 网络编程_TCP_Socket通信原理_多个客户端_聊天室原理JAVA189-190
- 网络编程_TCP_Socket通信_聊天室_客户端多线程_群聊JAVA191-192
- 网络编程_TCP_Socket通信_聊天室_私聊_构思_实现JAVA193-194
- [网络编程]——网络编程_TCP_Socket通信_聊天室.雏形
- [网络编程]——TCP_Socket通信_聊天室_客户端多线程
- [网络编程]——TCP_Socket通信_聊天室_客户端多线程.初步形成
- [网络编程]——网络编程_TCP_Socket通信
- 网络编程_多线程实现聊天室程序
- 黑马程序员_Java基础_网络编程_客户端服务端数据传输,交互,客户端请求服务原理,自定义浏览器,URL统一资源定位符
- 网络编程_关于多个客户端上传到一个服务器的思考
- 网络编程_多线程改进多个客户端上传文件案例
- 黑马程序员_网络编程之客户端
- 网络聊天_客户端(Winsock编程)
- 模拟QQ聊天程序_客户端_网络编程
- 网络编程_进程间通信_管道
- 网络编程_UDP编程原理_发送类型_cs与bs区别JAVA187-188
- 网络编程中客户端和服务端通信过程、原理及代码示例
- 网络编程(了解客户端和服务器端原理)
- 字符串的定义、替换、比较、截取
- 谷歌推荐的图片加载框架--Glide的简单介绍
- 我们编程吧 之 python 学习手册0.75
- python logging 替代print 输出内容到控制台和重定向到文件
- 往文件中写入内容(代码示例)
- 网络编程_TCP_Socket通信原理_多个客户端_聊天室原理JAVA189-190
- Java 常见面试题整理
- CramFS文件系统
- Class.forName的作用以及为什么要用它
- msyql从bin-log日志恢复数据
- JSP中的数据库使用
- 大型网站系统与Java中间件读书笔记
- static关键字
- C++11中的线程简介