楼主: dlmxv90851
1325 1

React17系统阐述结合TS构建旅游电子商务平台梵蒂冈 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

96%

还不是VIP/贵宾

-

威望
0
论坛币
266 个
通用积分
55.0568
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1668 点
帖子
98
精华
0
在线时间
69 小时
注册时间
2020-4-17
最后登录
2024-9-19

楼主
dlmxv90851 发表于 2022-10-12 15:45:57 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
React17系统阐述结合TS构建旅游电子商务平台梵蒂冈
SpringBoot+WebSocket实现即时通讯
什么是websocket?
WebSocket是通过单一TCP连接进行全双工通信的协议。WebSocket通信协议在2011年被IETF指定为标准RFC 6455,并由RFC7936进行了补充。WebSocket API也被W3C指定为标准。
WebSocket使得客户端和服务器之间的数据交换更加容易,并允许服务器主动将数据推送到客户端。在WebSocket API中,浏览器和服务器只需要握手一次,就可以直接创建持久连接,双向传输数据。
为什么需要HTTP协议的WebSocket?
HTTP协议采用客户端(浏览器)轮询的方式,即客户端发出请求,服务器响应。为了获得最新的数据,需要不断轮询HTTP请求,这会占用大量带宽。
WebSocket采用了一些特殊的头,这样浏览器和服务器只需要“握手”建立连接通道后,这个链接就会保持活动状态,客户端和服务器后续的通信都会使用这个连接,解决了Web的实时性问题。与HTTP相比,它有以下优点:

Web客户端只能建立一个TCP连接。
WebSocket服务器可以主动将数据推送到Web客户端。
有一个更轻量级的报头,减少了数据传输量

特性

该服务器基于TCP协议,易于实现。
对HTTP协议有很好的兼容性,默认端口也是80和443。握手阶段使用HTTP协议,握手时不容易屏蔽,可以通过各种HTTP代理服务器。
数据格式轻便,通信高效,节省带宽。
支持文本数据和二进制数据的传输。
没有同源限制,客户端可以和任何服务器通信。
也支持加密传输,WS+SSL,URL类似wss://


配置websocket服务
包com . web socket . spring boot _ web socket . web socket;

导入lombok . extern . SLF 4j . SLF 4j;
导入org . spring framework . stereotype . component;

导入javax . web socket . *;
导入javax . web socket . server . path param;
导入javax . web socket . server . server endpoint;
导入Java . util . ArrayList;
导入Java . util . collections;
导入Java . util . list;
导入Java . util . concurrent . concurrent hashmap;
import Java . util . concurrent . copyonwritearrayset;

/**
* @Program: springboot_websocket
* @ClassName WebsocketServer
* @作者:刘涛
* @描述:websocket服务
* @Create: 2022-08-19 18:52
* @版本1.0
**/
@Slf4j
@组件
@ server endpoint("/web socket/{ userId } ")
公共类WebSocketServer {
//在线人数
私有静态int onlineCount
//当前会话
非公开会议;
//用户唯一ID
私有字符串userId

private static CopyOnWriteArraySet WebSocket set = new CopyOnWriteArraySet();

/**
*并发包的线程安全集,用于存储每个客户端对应的MyWebSocket对象。
*/
private static concurrent hashmap WebSocket map = new concurrent hashmap();

/**
*为了保存在线用户信息,在方法中创建一个新的列表来存储它[实际项目可以根据其复杂程度存储在数据库或缓存中]
*/
private final静态列表SESSIONS = collections . synchronized List(new ArrayList());

/**
* @methodName: onOpen
* @描述:建立连接
* @作者刘涛
* @ param[会话,用户Id]
* @updateTime 2022/8/19 19:31
* @返回void
* @次投掷
**/
@OnOpen
public void on open(Session Session,@ path param(" userId ")String userId){
this.session = session
this.userId = userId
websocketset . add(this);
sessions . add(session);
if(websocketmap . contains key(userId)){
websocketmap . remove(userId);
webSocketMap.put(userId,this);
}否则{
webSocketMap.put(userId,this);
addOnlineCount();
}
React17系统阐述结合TS构建旅游电子商务平台梵蒂冈
download链接:https://pan.baidu.com/s/1NI6ZX7GsL-ML5HeQST3fDQ?pwd=xvvj
提取码:xvvj
--来自百度网盘超级会员V5的分享

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:电子商务 梵蒂冈 ACT collections Collection

沙发
晏几道 发表于 2023-10-27 13:09:08
了解一下

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 11:51