当前位置: 首页 > news >正文

免费空间asp网站/奶茶软文案例300字

免费空间asp网站,奶茶软文案例300字,佛山市公司网站制作,设计一个企业网站报价前言 最近学习了UDP,TCP协议在网络编程中的应用,写一点东西总结一下复习用。 UDP协议 该协议是一种不需要双方建立通信连接的协议,以数据包的形式发送数据,是一种不安全的协议。 以下代码展示了一个客户端发送数据,…

前言

最近学习了UDP,TCP协议在网络编程中的应用,写一点东西总结一下复习用。

UDP协议

该协议是一种不需要双方建立通信连接的协议,以数据包的形式发送数据,是一种不安全的协议。
以下代码展示了一个客户端发送数据,服务端接收数据的小例子。

UDP协议发送端发送数据

/** UDP协议发送数据* 1.创建发送端Socket对象 (DatagramSocket 用来接收发送数据报包的套接字)* 2.创建数据,打包数据(数据报包对象)* 3.调用Socket对象的发送方法发送数据包* 4.释放资源* */import java.io.IOException;
import java.net.*;
import java.util.Scanner;public class Send {public static Scanner sc = new Scanner(System.in);public static void main(String[] args) throws IOException {//创建Socket对象;DatagramSocket datagramSocket = new DatagramSocket();while(true){System.out.println("请输入数据");String s="";s=sc.nextLine();if(s.equals("good bye")) break;//创建发送的数据;byte[] bys = s.getBytes();//长度;int len=bys.length;//IP地址对象;InetAddress address = InetAddress.getByName("DESKTOP-KP5GLHE");//端口;int port = 10086;//创建数据报包对象; 向addressIP地址上的端口为port的进程发送长度为len的byte[]数据;DatagramPacket datagramPacket = new DatagramPacket(bys,len,address,port);//发送;datagramSocket.send(datagramPacket);}//释放资源;//datagramSocket.close();}
}

接收数据端

 /*
* UDP协议接收数据
* 1.创建接收端Socket对象
* 2.创建一个数据报包对象
* 3.调用Socket对象的接收数据
* 4.解析数据,显示
* 5.释放资源
*
* */import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;public class Receive {public static void main(String[] args) throws IOException {//接收对象;DatagramSocket datagramSocket = new DatagramSocket(10086);while(true){//创建接收数据报包对象;byte[] bys = new byte[1024];int len=bys.length;DatagramPacket datagramPacket = new DatagramPacket(bys,len);//接收数据;datagramSocket.receive(datagramPacket);//阻塞式方法;//获取数据;byte[] bys2 = datagramPacket.getData();len = bys2.length;//获取发送方的ip地址;InetAddress address = datagramPacket.getAddress();String ip = address.getHostAddress();String s = new String(bys2,0 ,len);System.out.println(s+" "+ip);}//释放资源;//datagramSocket.close();}
}

注意

接收端接收方法为阻塞式方法,毕竟不可能没有数据发送就接收到。
感觉这个可以理解为管程机制。

TCP协议

三次握手建立连接,四次挥手断开连接,是一种需要接收双方同时建立连接的协议。
以下代码需首先启动服务器端,若先启动客户端,则会抛出异常,该异常很好理解,基于TCP协议要求服务器端客户端都在线,若先启动客户端则找不到服务器端,三次握手第一次便无法成功,故发生找不到服务器异常。

客户端

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;/*
* TCP协议发送数据
* 1.创建发送端的Socket对象,若成功则说明连接建立成功
* 2.获取输出流,写数据
* 3.释放资源
* */
public class Client {public static void main(String[] args) throws IOException {//创建发送端Socket对象;Socket socket = new Socket("192.168.63.1",12386);//获取输出流;OutputStream os = socket.getOutputStream();//写数据;os.write("hello world".getBytes());//从客户端接收回传信息;InputStream inputStream = socket.getInputStream();byte[] bys = new byte[1024];int len = inputStream.read(bys);String res = new String(bys,0,len);System.out.println(res);//释放资源;socket.close();}
}

服务器端

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;/*
* TCP协议接收数据
* 1.创建接收端的Socket对象(ServerSocket)
* 2.监听客户端连接,返回一个对应的Socket对象(三次握手)
* 3.获取输入流
* 4.释放资源
* TCP服务器端不应该关闭,时刻等待不同客户端的连接,
* 故每次与客户端通信完成后,应释放与该客户端的连接。
* */
public class Server {public static void main(String[] args) throws IOException {//创建;ServerSocket serverSocket = new ServerSocket(12386);//监听客户端连接,返回一个Socket对象Socket socket = serverSocket.accept();//阻塞方法,等待客户端连接;//获取输入流;InputStream is = socket.getInputStream();byte[] bys = new byte[1024];int len = is.read(bys);String s = new String(bys,0,len);String ip = socket.getInetAddress().getHostAddress();System.out.println(ip+" "+s);//给客户端写一个数据表示已收到数据;OutputStream outputStream = socket.getOutputStream();outputStream.write("I get it".getBytes());//关闭与该客户端的连接,释放资源;socket.close();}
}

总结

暂无。

github 获取代码

案例代码

http://www.jmfq.cn/news/4795723.html

相关文章:

  • 做网站和服务器的大小有关吗/百度指数官方网站
  • 查询网站怎么做/百度关键词指数排行
  • 郑州富士康事件真相/搜索引擎优化师
  • 平湖市规划建设局网站/浏览器地址栏怎么打开
  • 石家庄做网站排名公司/企业宣传册
  • b2b电子商务网站网址/怎么做网络营销推广
  • 静态网站用什么做最快/sem推广计划
  • 浙江公司网站建设制作/武汉百度推广电话
  • 百度新疆网站建设/seo黑帽技术
  • 免费建立个人网站/青岛网站建设方案服务
  • 百度快照 如何抓取网站/百度认证营销推广师
  • 给网站做路由/外链链接平台
  • 连云港网站制作公司哪家好/国家重大新闻
  • 农业公司网站建设/海外新闻app
  • 无锡企业网站制作哪家好/汽车营销活动策划方案
  • 在线代理访问网站的网址/中国宣布取消新冠免费治疗
  • 一个网站要怎么做的/建个网站费用大概多少钱一年
  • 长网页网站/seo1域名查询
  • 制作网站教程/爱客crm
  • 长沙做网站建设/建站seo推广
  • 做网站要钱么/北京seo不到首页不扣费
  • 网站开发只要/国际局势最新消息今天
  • 发票内容能写网站建设吗/关键词排名怎么查
  • wordpress运行流程/百度seo如何快速排名
  • 股票群彩票网站做慈善/浙江seo关键词
  • 丰县住房与城乡建设部网站/百度搜索推广采取
  • 如何做网络推广优化/搜索引擎优化的流程是什么
  • 父亲节网页制作素材/seo包年优化
  • 宝安做网站哪家好/手机版怎么用百度快照
  • 哈尔滨专门做网站/中国新闻最新消息今天