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

电子商务网站设计岗位主要是?互联网营销怎么做

电子商务网站设计岗位主要是?,互联网营销怎么做,福建省建设相关网站,产品服务展示型网站有哪些一.什么是套接字 在 Java 中,套接字(Socket)是一种用于实现网络通信的机制,它提供了一种在不同计算机之间进行数据传输的方式。 1.分类 流套接字(Stream Socket):使用 TCP 协议,提…

一.什么是套接字

在 Java 中,套接字(Socket)是一种用于实现网络通信的机制,它提供了一种在不同计算机之间进行数据传输的方式。

1.分类

  • 流套接字(Stream Socket)使用 TCP 协议,提供可靠的、面向连接的字节流通信。数据以连续的字节流形式传输,保证数据的顺序和完整性,适用于对数据准确性要求高的场景,如文件传输、HTTP 协议等。
  • 数据报套接字(Datagram Socket)使用 UDP 协议,提供无连接的、不可靠的数据报通信。数据以独立的数据包(数据报)形式传输,不保证数据的顺序和完整性,但具有较高的实时性,适用于对实时性要求高但能容忍一定数据丢失的场景,如视频会议、实时游戏等。

2.相关类

  • ServerSocket用于服务器端,创建一个监听特定端口的套接字,等待客户端连接。通过accept()方法阻塞等待客户端连接,一旦有客户端连接,就返回一个Socket对象用于与该客户端进行通信。
  • Socket客户端和服务器端在建立连接后,都使用Socket对象进行数据的读写操作。可以通过getInputStream()获取输入流读取数据,通过getOutputStream()获取输出流写入数据。

2.1 getInputStream() 和 getOutputStream() 

getInputStream() 和 getOutputStream() 是 Socket 类的重要方法

  • getInputStream()Socket 类的 getInputStream() 方法会返回一个 InputStream 对象,这个对象能够让程序从  与该 Socket 连接的另一端读取数据。当网络中的数据传输到本地时,就可以通过这个输入流把数据读取到程序里。
  • getOutputStream()getOutputStream() 方法返回一个 OutputStream 对象,程序可以使用这个对象向   与该 Socket 连接的另一端写入数据。当程序有数据需要发送到网络的另一端时,就可以通过这个输出流将数据发送出去。

 二.流套接字-代码示例

下面是一个简单的基于 TCP 协议的客户端 - 服务器通信示例

1.服务器端代码

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;public class Server {public static void main(String[] args) {try {
1.客户端和服务器端建立连接/ 创建一个监听端口号为888的服务器端套接字ServerSocket serverSocket = new ServerSocket(8888);/等待客户端连接(通过accept()方法阻塞等待)/一旦有客户端连接,就返回一个Socket对象用于与该客户端进行通信Socket socket = serverSocket.accept();2.使用Socket对象进行数据的读写操作/ 获取输入流读取数据.输出流写入数据InputStream inputStream = socket.getInputStream();OutputStream outputStream = socket.getOutputStream();3. 读取客户端发送过来的数据/创建了一个长度为 1024 的字节数组 bufferbyte[] buffer = new byte[1024];/从输入流中读取数据到 buffer 数组中。该方法会返回实际读取到的字节数,将这个值赋给变量 lengthint length = inputStream.read(buffer);/将字节数组 buffer 中从索引 0 开始、长度为 length 的字节数据转换为字符串String message = new String(buffer, 0, length);/打印出来System.out.println("Received from client: " + message);4. 向客户端发送响应数据String response = "Hello, client!";outputStream.write(response.getBytes());
5. 关闭资源socket.close();serverSocket.close();} catch (IOException e) {e.printStackTrace();}}
}

2.客户端代码 

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;public class Client {public static void main(String[] args) {try {
1.让客户端连接到服务器/创建客户端套接字,连接到服务器。指定服务器地址,服务器端口号/与本地服务器(localhost)的 8888 端口建立 TCP 连接Socket socket = new Socket("localhost", 8888);2.使用socket对象进行数据的读写操作/获取输入流和输出流InputStream inputStream = socket.getInputStream();OutputStream outputStream = socket.getOutputStream();
3. 向服务器发送数据String message = "Hello, server!";outputStream.write(message.getBytes());
4. 读取服务器响应的数据byte[] buffer = new byte[1024];int length = inputStream.read(buffer);String response = new String(buffer, 0, length);System.out.println("Received from server: " + response);// 关闭资源socket.close();} catch (IOException e) {e.printStackTrace();}}
}

三.数据报套接字-代码示例 

简单的使用DatagramSocket发送和接收 UDP 数据包的示例。

UDPClientUDPServer发送了一条消息,UDPServer接收并打印了该消息

1.服务器端代码 

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;public class UDPServer {public static void main(String[] args) throws Exception {/创建一个监听端口号为888的服务器端UDP套接字DatagramSocket socket = new DatagramSocket(8888);byte[] buffer = new byte[1024];/创建一个用于接收指定长度数据的数据包DatagramPacket packet = new DatagramPacket(buffer, buffer.length);/调用recive()方法接收数据-将接收到的数据填充到Packet中socket.receive(packet);/获取数据包中的数据字节数组,(从0开始到实际长度)String message = new String(packet.getData(), 0, packet.getLength());System.out.println("Received: " + message);// 关闭套接字socket.close();}
}

 2.客户端代码

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;public class UDPClient {public static void main(String[] args) throws Exception {/ 创建一个客户端UDP套接字DatagramSocket socket = new DatagramSocket();String message = "Hello, Server!";//要发送的消息/ 将消息转换为字节数组byte[] buffer = message.getBytes();/把数据封装到数据包里/ 创建一个用于接收指定长度数据的数据包,且指定数据包要发送到的目标地址和端口号DatagramPacket packet = new DatagramPacket(buffer, buffer.length, InetAddress.getByName("localhost"), 8888);/ 发送数据socket.send(packet);/ 关闭套接字socket.close();}
}

 四.DatagramSocket

是 Java 中用于表示 UDP 数据包的类

1.作用

适用场景:用于DatagramSocket中发送和接收数据时候

1.在发送数据时,需要将数据封装在DatagramPacket中,并指定目标地址和端口号;

2.在接收数据时,通过DatagramSocket对象的recieve( )方法将接收到的数据填充到DatagramPacket,通过它可以获取到数据内容、发送方的地址和端口号等信息。

2.构造方法

  • DatagramPacket(byte[] buf, int length):创建一个用于接收指定长度数据的数据包。
  • DatagramPacket(byte[] buf, int offset, int length):创建一个指定偏移量和长度的接收数据包。
  • DatagramPacket(byte[] buf, int length, InetAddress address, int port):创建一个用于发送数据的数据包,指定了目标地址和端口号。
  • DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port):创建一个指定偏移量、长度、目标地址和端口号的发送数据包。

3.主要方法

  • getAddress():获取数据包的发送方或接收方的 IP 地址。
  • getPort():获取数据包的发送方或接收方的端口号。
  • getData():获取数据包中的数据字节数组。
  • getLength():获取数据包中实际数据的长度

http://www.dtcms.com/wzjs/505699.html

相关文章:

  • 个人做信息分类网站需备案吗品牌宣传有哪些途径
  • 定制微信网站seo数据分析
  • 个人网站设计与制作源代码福州网络营销推广公司
  • 建立企业网站的费用精准数据营销方案
  • 苏州哪家网站建设百度联盟广告收益
  • 德州哪家网站优化好如何做好网络推广销售
  • 个人网站icp网页设计培训
  • 电商网站策划优化英语
  • 网站运营这么做优化设计答案六年级上册语文
  • 做苗木的用什么网站北京seo
  • 直销怎么找客户运营seo是什么意思
  • 哈尔滨模板网站建设网页设计学生作业模板
  • 慈善会网站建设方案河北百度代理公司
  • 和硕网站建设做seo推广一年大概的费用
  • wordpress淘宝联盟api怎么对接百度搜索引擎优化详解
  • 外汇直播室都是网站做的竞价托管代运营公司
  • 连云港北京网站建设酒店seo是什么意思
  • 深圳建设工程交易服务网站百度网页版 入口
  • 如何提高网站的收录率和收录量网络渠道有哪些
  • 腾讯企业邮箱购买电脑优化大师
  • 做蛋糕网站的优点如何利用网络进行推广和宣传
  • mooc网站建设小说网站排名免费
  • 淘宝上做的网站靠谱吗营业推广
  • 汇赢网站建设制作网站免费
  • 企业网站制作 徐州合肥网络营销公司
  • 做网站的不肯给ftp搜索引擎收录查询工具
  • 建立网站分为几阶段北京seo加盟
  • 企业网站源码进一品资源网seo是什么服
  • 网站收录率谷歌香港google搜索引擎入口
  • 免费建微网站平台网站建设的方法有哪些