Socker通信
来源:互联网 发布:快速排序算法实现 编辑:程序博客网 时间:2024/06/07 18:06
1.服务器端程序
TCP/IP服务器端应用程序是通过Java语言中提供的ServerSocket和Socket这两个有关网络的类来实现的。而ServerSocket类除了建立一个Server之外,还通过accept()方法提供了随时监听客户端连接请求的功能,它的构造方法有以下两种。
ServerSocket(int port)
ServerSocket(int port,int backlog)
其中port是指连接中对方的端口号,backlog则表示服务器端所能支持的最大连接数。下面的程序用来监听客户端应用程序建立连接的请求,并在连接建立后向客户端发送信息。
/**
* 功能:这是服务器端程序,用来监听客户端应用程序建立连接的请求,并在连接建立后向客户端发送信息
*/
package com.xushouwei;
//引入相应的包
import java.net.*;
import java.io.*;
public class TServer
{
public static void main(String[] args)
{
//定义ServerSocket类
ServerSocket s=null;
//定义Socket类
Socket s1;
//定义发送字符串
String sendString="QWERDF...";
//得到发送字符串的长度
int s1lenth=sendString.length();
//定义OutputStream类
OutputStream s1out;
//定义DataOutputStream类
DataOutputStream dos;
//通过1314端口建立连接
try
{
//创建ServerSocket并把传入端口号
s=new ServerSocket(1314);
} catch (Exception e)
{
e.printStackTrace();
}
//循环运行监听程序,以监视连接请求
while(true)
{
try
{
//监听端口请求,等待连接
s1=s.accept();
//得到与socket相连接的数据流对象
s1out=s1.getOutputStream();
dos=new DataOutputStream(s1out);
//发送字符串
dos.writeUTF(sendString);
//关闭数据流(但不是关闭Socket连接)
dos.close();
s1out.close();
s1.close();
} catch (Exception e)
{
e.printStackTrace();
}
}
}
}
2.客户端程序
TCP/IP服务器端应用程序是通过Java语言中提供的Socket类来实现的。同样,Socket类提供了包括建立网络连接在内的许多功能,它的构造方法有以下几种:
Socket(InetAddress address,int port)
Socket(InetAddress address,int port,Booleanstream)
Socket(String host,int port)
Socket(String host,int port, InetAddresslocalAddr,int localPort)
其中,address、host和port分别指连接另一方的IP地址、主机名称和端口号,stream这表示该Socket是否是支持流的Socket,localAddr和localPort是本机的地址和端口号。下面程序用来与前面的服务器端程序建立连接,并将服务器端送来的信息显示在标准输出上。
/**
* 功能:这是客户端程序,用来与前面的服务器端程序建立连接,并将服务器端送来的信息显示在标准输出上
*/
package com.xushouwei;
//引入相应的包
import java.Net.*;
import java.io.*;
public class TClint
{
public static void main(String[] args)
{
//定义Socket类
Socket s1;
//定义InputStream类
InputStream s1In;
//定义DataInputStream类
DataInputStream dis;
try
{
//在端口1314打开连接
s1=new Socket("127.0.0.1",1314);
//获得socket端口的输入句柄,并从中读取数据
s1In=s1.getInputStream();
dis=new DataInputStream(s1In);
String st=new String(dis.readUTF());
System.out.println(st);
//操作结束,关闭数据流及socket连接
dis.close();
s1In.close();
s1.close();
} catch (Exception e)
{
e.printStackTrace();
}
}
}
- Socker通信
- socker python 服务端与客户端进行通信
- socker服务端
- java socker编程实例
- socker的基础知识(二)
- Linux环境下的socker编程
- java-基于Socker服务完成UDP协议
- TCP三次握手/四次挥手+HTTP过程+Socker原理
- socker编程实现一个server收到client的信息
- Cloudera Manager 安装时出现socker gaierror[error -2] name or service not know 或者could not contact scm ser
- 通信
- 通信
- 通信
- 通信
- 通信
- 通信
- '通信'
- 通信
- java爬虫中Element类中各方法的使用
- Lucas定理
- swift enum高级用法
- JDBC连接池 —— c3p0
- linux黑屏重启 caffe 训练深度学习网络crfasrnn deeplab
- Socker通信
- 51Nod-1227-平均最小公倍数
- Mac上画图工具
- 文章标题
- leetcode 21. Merge Two Sorted Lists
- 深入研究Servlet线程安全性问题
- 新路程------wlan0 连接wifi操作
- 折线图实现
- Android Studio 基本设置