动物园里的程序猿
码龄3年
关注
提问 私信
  • 博客:17,188
    17,188
    总访问量
  • 24
    原创
  • 900,196
    排名
  • 9
    粉丝
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2021-08-27
博客简介:

m0_61285646的博客

查看详细资料
个人成就
  • 获得30次点赞
  • 内容获得3次评论
  • 获得68次收藏
  • 代码片获得163次分享
创作历程
  • 23篇
    2023年
  • 1篇
    2022年
成就勋章
TA的专栏
  • 服务器
  • windows
  • 虚拟机
  • java
    18篇
  • webSocket
    3篇
  • git
    1篇
  • idea
    2篇
  • springMVC
    1篇
兴趣领域 设置
  • Java
    javatomcatspringmavenintellij-ideajava-eespring bootspring cloudjvmjunitlog4jservletmybatisniodubbojava-zookeeperjava-rabbitmq
  • 编程语言
    java
  • 开发工具
    gitsvndockeridea
  • 后端
    sqlmysql
  • 网络与通信
    httphttps
  • 测试
    postman
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

176人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

使用GoEasy实现Java实时推送

1. 服务器地址需要根据你在GoEasy控制台创建的应用区域来填写,目前GoEasy主要有两块区域,杭州: rest-hangzhou.goeasy.io,新加坡: rest-singapore.goeasy.io。3. html页面作为接收端,其subscribe函数中的channel必须与java后端发送的channel一致,可以完成消息的接收;2. GoEasy的appkey需要你到GoEasy控制台去获取,java后端发送消息,需要使用common key。一个前端向另一个前端发送消息。
原创
发布博客 2023.11.09 ·
302 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

基于websocket实现实时通信之GoEasy入门学习

一. GoEasy介绍一. GoEasy介绍平台背景Websocket允许服务端主动向客户端推送数据,正在越来越广泛被应用于各种系统开发中。但是,在websocket的实际开发中,技术团队却时常面临各种技术挑战:消息丢失,消息重复性能低下,消息延时高,压力测试成本高,性能优化技术难度高服务不稳定,用户量或消息发送量增长时,服务频繁崩溃集群搭建难度大,难以实现高可用和横向扩展服务器和带宽费用高,运维成本高开发难度大,周期长,人力消耗大导致:用户体验不佳,客户满意度低。
原创
发布博客 2023.11.07 ·
1264 阅读 ·
5 点赞 ·
0 评论 ·
5 收藏

webSocket消息推送之入门学习

服务端到客户端的header只有2~10 Bytes,客户端到服务端的需要加上额外的4 Bytes的masking-key。Sec-WebSocket-Key主要目的不是确保数据的安全性,最主要作用是提供基本的安全防护,减少恶意连接。他们保证消息数据全程加密传输,高并发、低延时,99.95%的高可用。发送方 --> 接收方:ping,探测,实现 WebSocket 的 Keep-Alive,可以有Payload。你不需要自己搭建了,前后端接入他们的服务器就可以了,他们的机器都在国内,速度和可靠性有保证。
原创
发布博客 2023.11.07 ·
185 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

java之Stream流(二)---实践案例

通过Stream调用静态方法of,将字符串转成stream流的同时把字符串内容中的空格使用replace方法替换为逗号,最终循环打印输出结果为"hello,world",这里可以看到Stream流是创建成功的,说明stream流创建成功。直接通过数组或者集合调用stream方法创建stream流,这里以数组为例,可以看到通过stream方法创建stream流是成功的,因为循环打印stream流中的元素, 输出结果与数组中的元素一致,说明stream流创建成功。2.3 distinct去重。
原创
发布博客 2023.10.18 ·
125 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java之Stream流(一)---详解

集合的流式编程
原创
发布博客 2023.10.16 ·
139 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

java之Stream流(三)---进阶

Java Stream API 是一个强大而灵活的工具,可以显著简化数据处理任务的代码。通过遵循本文中讨论的提示,可以确保代码既高效又有效。但是,请务必记住,有效使用 Java Stream API 需要充分了解其功能和限制。
原创
发布博客 2023.10.16 ·
137 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

git常用命令

git config --global user.email 邮箱。git config --global user.name 姓名(***重复第5和第7的步骤:以下是第二次提交的信息***git rm --cached 文件名。git commit -m "日志信息" 文件名。git reset --hard 要切换的版本号。图中红色框为提交的版本号 第1次提交。图中红色框为提交的版本号 第2次提交。(文件红色表示此时文件在工作区)初始化本地仓库后的状态。git add 文件名。
原创
发布博客 2023.05.11 ·
82 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-抽象类

抽象的描述,没有具体描述。
原创
发布博客 2023.05.02 ·
111 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-重写

/ 发短信System.out.println("发短信。。。。。。");// 玩游戏System.out.println("玩游戏。。。。。。");// 来电显示System.out.println("来电显示你的电话号码");// System.out.println("来电显示你的电话号码");System.out.println("显示头像");System.out.println("显示号码归属地");
原创
发布博客 2023.05.02 ·
563 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

java基础-继承

int age;System.out.println("跑路了。。。。。。");// 继承关键字 extends Zi extends Fu//此处省略代码,只做继承的演示// 创建子类实例化对象// 使用的是父类里的属性zi.name="张三";zi.age=18;// 调用的是父类里的方法zi.run();//跑路了。。。。。。// 访问的是父类里的成员属性// 张三// 18。
原创
发布博客 2023.05.02 ·
1056 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

java基础-Math类

Math继承了Object类。
原创
发布博客 2023.05.01 ·
2269 阅读 ·
4 点赞 ·
0 评论 ·
8 收藏

java基础-Arrays类

可同通过类名·方法名直接调用。java.util包下。用来操作数组的各种方法。
原创
发布博客 2023.05.01 ·
186 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-代码块

使用{ } 标记的代码就是代码块,由于所在位置不同分为局部代码块构造代码块静态代码块。二. 局部代码块方法中定义的变量叫做局部变量,
原创
发布博客 2023.05.01 ·
212 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-静态修饰符static

static是静态修饰符,一般用于修饰类中的成员变量或者成员方法,可以通过类名直接访问类中的被static修饰的成员变量或者static修饰的成员方法,被静态成员变量或者静态成员方法所在类的所有实例对象共有。
原创
发布博客 2023.04.26 ·
1857 阅读 ·
4 点赞 ·
0 评论 ·
9 收藏

java基础-String

类位于java.lang包下,因此使用无需导包。StringString类这里的abc就是String类的实例对象。
原创
发布博客 2023.04.25 ·
809 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

java基础-集合ArrayList

集合也是一个与数组一样,也是一个容器。所存储的数据称之为元素,集合中存放的数据都是引用数据类型!和数组不一样的是:数组中可以存放基本数据类型和引用数据类型,而集合只能存放引用数据类型;数组的长度不可改变,集合的长度可以改变。
原创
发布博客 2023.04.25 ·
476 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

java基础-封装

继上篇java基础-面向对象文章来说,当定义一个Person类,类中有姓名,年龄,身高,肤色这几个静态特征(成员属性,就是成员变量),在使用创建出来的对象.成员属性赋值时,会出现不和常理的情况,比如说创建Person类对象,对象的年龄为-10或者200,这种情况便不符合显示生活人类寿命的合理范围,便需要封装,对不合理的操作进行提示。
原创
发布博客 2023.04.21 ·
1136 阅读 ·
6 点赞 ·
0 评论 ·
6 收藏

java基础-面向对象编程思想

成员变量是类的属性,定义在类中方法外;局部变量是执行方法所涉及到的变量,定义在方法中或者方法上。成员变量保存在JVM中的堆内存中,随着对象的销毁而销毁;成员变量作用于在整个类中,初始化值由程序动态去分匹配(数据类型不同,初始化值不同);局部变量作用于方法中,没有默认值必须先定义,再赋值,最后调用。创建一个抽象的Person类,有姓名,年龄,身高,肤色静态特征,也有吃和睡两个行为动作。比如说人,有肤色,年龄,身高等静态特征,也有兴趣爱好,行为习惯等动态行为。
原创
发布博客 2023.04.21 ·
169 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-方法

可以复用的代码,简化代码,提高程序的灵活。
原创
发布博客 2023.04.15 ·
65 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础-数组

数据类型[ ] 数组名称 = new 数据类型[ ]{元素1,元素2,元素3......}数组存储的数据类型[ ] 数组名称 = new 数组存储的数据类型 [数据类型[ ] 数组名称 = {元素1,元素2,元素3......}数组相当于存放东西的容器,用于存放数据,数组中的数据称之为数组的元素,数组是一个引用数据类型。定义数组指定数组长度,但是没有给数组中存放数据。数组名[索引]=值;可通过length属性获取数组的长度。
原创
发布博客 2023.04.15 ·
82 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏
加载更多