java通信技术---socket
来源:互联网 发布:网络平台创业计划书 编辑:程序博客网 时间:2024/06/05 14:27
—————————-服务端————————-
package tongxin;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
* 服务端
* ServerSocket 此类实现服务器套接字。服务器套接字等待请求通过网络传入。
* 它基于该请求执行某些操作,然后可能向请求者返回结果。
* Socket accept() 侦听并接受到此套接字的连接。
*/
public class MyServer {
public static void main(String[] args) throws IOException { //1.在服务器的端口8000创建一个服务端 ServerSocket myServer = new ServerSocket(7000); //2.等待客户端8000端口链接 Socket socket = myServer.accept(); //3.看一下客户端跟我说啥了,输入流,使用输入反冲流, InputStreamReader in = new InputStreamReader(socket.getInputStream()); BufferedReader br=new BufferedReader(in); String info=null; while((info=br.readLine())!=null) { System.out.println("服务端收到的:"+info); } socket.shutdownInput(); //4.我也想客户端发个请求 BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); bw.write("客户端你好,我是服务端,欢迎你来访问我"); bw.flush(); bw.close(); in.close(); br.close(); myServer.close();}
}
—————–客户端—————————-
package tongxin;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* 客户端
* Socket—此类实现客户端套接字(也可以就叫“套接字”)。套接字是两台机器间通信的端点
* InetAddress—此类表示互联网协议 (IP) 地址。
* String getHostName()—主机ip
获取此 IP 地址的主机名。
InputStream getInputStream()
返回此套接字的输入流。
*
*/
public class Client {
public static void main(String[] args) throws IOException, IOException {
// 1.向本机的8000端口发出客户请求 Socket socket = new Socket(InetAddress.getLocalHost(), 7000); System.out.println("已经向" + socket.getPort() + "端口链接成功"); // 2.客户端说:服务端你好,我是客服端----获取输出流,写进去,使用缓冲流写 BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); bw.write("服务端你好,我是客服端"); bw.flush();//一定放在关闭输出流之前进行缓冲 socket.shutdownOutput(); //3.看一下服服端跟我发了啥,输入流,使用输入反冲流, InputStreamReader in = new InputStreamReader(socket.getInputStream()); BufferedReader br=new BufferedReader(in); System.out.println("客服端收到的:"+br.readLine()); bw.close(); in.close(); br.close(); socket.close();}
}
- java通信技术---socket
- Java Socket应用 通信技术
- java实现多线程的socket通信技术
- socket 通信技术介绍
- Java Socket通信技术收发线程互斥的解决方法
- java - socket通信 客户端
- java socket 通信
- Java Socket 通信
- java Socket通信(一)
- java Socket通信实例
- Java Socket通信
- PHP Java Socket 通信
- Java NIO Socket通信
- java的socket通信
- Java NIO Socket通信
- java socket通信
- Java 中 Socket 通信
- Java网络通信Socket
- StringUtils常用方法
- 那些年把我们坑惨的指针
- 接口回调
- 栈和队列的相互实现
- 红色小圆点消息提示实现
- java通信技术---socket
- python练习 0001,0002,0003
- 非精确线搜索之Armijo搜索
- Jzoj4737 金色丝线将瞬间一分为二(GOSICK系列)
- python学习笔记9.2-文件及文件夹操作
- etElementByID getElementsByName getElementsByTagName的区别
- 【数据结构】实验一:线性表的应用---成绩有序表的建立以及合并
- linux vim编辑
- hashmap与hashtable区别