luckysheet 协同轻实现

1.luckysheet后台协同轻实现?

为什么不直接使用官方的?相信看过官方版本的介绍,就知道,部署成功就要折腾redis、postgre、nginx 环境,以至于后面推出了docker版本的部署。如果你想快速实现协同功能,你完全可以参考本文章,因为本项目是从官方的代码中剥离出来的基本功能!

话不多说,先上链接:Java后台代码-gitee、Java后台代码-github、演示视频、演示视频-2

 

关于官方的协同可以参考:Java官方后台版本、docker官方版本。

官方的版本协同做的很不错,点赞!首先讲一下两个版本的区别,一个是Java后台版本,需要自己去搭建相关开发环境,如:postgre、redis、nginx。相信你们看到这些,一个个的去折腾开发环境,是需要花费时间的。所以你想快速体验的话,推荐docker部署。docker解决了什么痛点呢?参考这个 

docker 有点类似于Python程序打包为.exe应用。假如你写了一个很不错的Python脚本或者应用,但是你想发给别人使用,这个时候会出现一个问题。他是没法直接使用。他需要做以下几个步骤:

1.安装Python解释器

2.执行Python指令运行

一般情况下,这样也没问题,只是费点时间。但是如果你写的Python程序时使用的是Python3版本,然后别人是安装Python2版本的解释器,执行会出错了,出现了版本差异。那么就需要一种技术,去除这种差异,一次打包,到处运行。所以把Python程序打包为.exe应用时,它是会把运行环境也打包进去(体积会变大),这样别人哪怕没有安装Python环境,也可以直接双击执行了。

 

2.原理

前端与后台通过如下格式(协议)进行通讯,通过sockt与后台建立套接字连接,进行数据传输。传输协议如下:

    {
        createTime: 命令发送时间
        data:{} 修改的命令
        id: "7a"   websocket的id
        returnMessage: "success"
        status: "0"  0告诉前端需要根据data的命令修改  1无意义
        type: 0:连接成功,1:发送给当前连接的用户,2:发送信息给其他用户,3:发送选区位置信息(就是会出现边框显示,显示名称的),999:用户连接断开
        username: 用户名
    }

只要后台通过解析接收到数据,经过处理成上方的格式数据,前端会根据接收到后台数据进行解析更新界面!

 

3.前端

前端比较简单,你只需要设置好地址就好了。

loadUrl:是你加载luckysheet数据的地址

updateUrl:是你后台websocket地址

allowUpdate:必须为true


        allowUpdate: true,
        loadUrl: "",
        updateUrl: "ws://xxxx",

 

 

 

 

 

你可能感兴趣的:(技术分享,java)