- 博客(140)
- 资源 (5)
- 问答 (1)
- 收藏
- 关注
原创 【Java多线程-常用API】wait与notify的使用
Owner线程发现条件不满足,调用wait方法,即可进入WaitSet变为WAITING状态BLOCKED和WAITING的线程都改处于阻塞状态,不占用CPU时间片BLOCKED线程会在Owner线程释放锁时唤醒WAITING线程会在Owner线程调用notify或notifyAll时唤醒,但唤醒后并不意味者立刻获得锁,仍需进入EntryList重新竞争
2023-02-01 14:04:54
23
原创 [Java-多线程] 锁原理(轻量级锁、锁膨胀、自旋锁、偏向锁)
我们平时使用的对象都是由两部分组成, 第一部分是对象头, 第二部分是对象的成员变量, 这里我么主要讲解对象头, 以32为虚拟机为例 :Klass Word : 每个对象都有类型 通过Klass Word就可以找到对应的类对象StateNormal (普通的)BiasedLightweight Locked (轻量级锁定)Heavyweight Locked (重量级锁定)| 11数字 01 代表的是加锁状态位。
2023-01-27 13:09:57
125
原创 多线程Monitor工作原理
我们都知道synchronized的作用是用来保证修饰的代码或者方法执行有且只有一个线程执行,也就是锁。那么在执行被锁住的方式时,synchronized就需要通过monitor来记录和保证锁的状态。所以monitor这里的作用其实就是起到了控制synchronized什么时候获取锁,什么时候释放锁,以及记录了锁被重用的次数。🍎。
2023-01-12 21:52:01
1002
原创 程序员如何在职场上走得更远一些?
首先第一个要聊的啊就是这个心态的问题,我觉得有时候可以改变一下自己的心态,可以尝试把工作当成一种投资,或者说呢把工作当成一种自己的产品来经营,把目光多多的聚焦在这个收获和成长上面啊这样一个心态来应对,我想要什么? 我能从中学到什么? 我能从中获得什么? 我可以提供什么价值? 因为如果我们把目光集中在自己身上,我们的内心呢就会平和一些,就不容易被一些其他的一些这个无关的因素所干扰,也会有助于自己的稳住心态,从而做出一些成绩。 而不是说在某一段工作旅程结束之后,只留下抱怨愤怒和遗憾,所以有了这样一个坚定且平
2023-01-02 09:15:38
326
转载 Java探针 Instrumentation
我们知道只要是java程序,运行的入口就一定是main方法。Java探针技术相当于变相的改变了这个约定,提供了一种外挂,只要用了这个外挂(即在程序的运行时参数中加了-javaagent),就可以先执行外挂jar包中的premain方法,然后再执行原程序中的main方法。这样就提供了一个在真正的程序执行前,可以修改并重新加载字节码的机会。作者:whslowly链接:https://www.jianshu.com/p/90f149d6cf95来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商
2022-12-24 21:03:24
47
原创 Java泛型的作用以及如何使用(继承、接口、方法、通配符) 附源码
E- Element (在集合中使用,由于集合中存放的是元素),E是对各方法中的泛型类型进行限制,以保证同一个对象调用不一样的方法时,操做的类型一定是相同的。E能够用其它任意字母代替T- Type(Java 类),T表明在调用时的指定类型。会进行类型推断K- Key(键)V- Value(值)N- Number(数值类型)
2022-12-14 22:45:11
634
原创 如何使用DNS加速你的浏览器访问速度?
我们在登录QQ的时候是直接访问的腾讯的服务器, 在下载好的QQ客户端已经帮你配置好了所有的IP, 所有没有域名解析的操作, 所以可以正常的登录。
2022-12-11 20:40:19
399
原创 [Redis-实战] 企业常用的缓存使用方案(查询、更新、击穿、穿透、雪崩) 附源码
下面我们以查询店铺为例, 因为店铺列表是不经常改变的数据, 所以我们可以请求redis缓存来降低MySQL的查询压力 🍩 缓存更新策略在常规的企业开发中,我们优先选择的缓存策略是 更新数据库的同时也会去更新缓存在此情况下我们也要考虑三点 : 🍭 缓存穿透代码实现如下, 当在数据库没有查询到后, 将空信("")息存入到Redis中,并设置过期时间为2分钟, 当用户再次查询时, 校验如果为("") 直接返回 店铺信息不存在!🍣 缓存雪崩🍕 缓存击穿🍥
2022-12-04 16:49:21
735
原创 postman汉化教程(历史老版本)
目录 : 1. 下载对应版本的postman 2.替换url中对应的版本号3.下载postman对应版本的汉化包4.打开postman文件位置5.打开后寻找 app-9.12.2/resources 目录 然后将下载好的压缩包解压6.重启postman即可汉化成中文了7. 汉化包下载地址历史版本下载请把下面链接的"版本号"替换为指定的版本号,例如:8.8.0Windows64位Windows32位Mac Intel ChipMac Apple ChipLinuxReleases · hlmd/Postma
2022-12-01 18:00:50
741
原创 什么叫共同富裕,刘强东给老板们打了个样
3、刘强东本人捐款1亿,扩大“员工子女救助基金”的规模,任何京东员工发生重大事故,他们的孩子都会由这支基金抚养到最长22周岁,直至大学毕业。2、集团拿出100亿元人民币,为包括全体德邦员工在内的所有基层员工,设立循环无息贷款的住房保障基金。此信一出,平时总被大家戏称是大强子的刘强东,立马拔高成了东哥。这两天,热搜上最火的男人,除了汪小菲,就是刘强东无疑了。我数了一下,那封信里,刘强东说了19次兄弟。只有从底层爬上来的人,才真正懂得底层的苦。牺牲上位者的利益,满足基层人的需求。有人说,刘强东是懂营销的。
2022-11-25 13:38:37
346
原创 大白话讲解TCP三次握手与四次挥手
对于TCP和UDP这两种协议, 做程序员的我们都应该有所耳闻, 我们平常的做的浏览网页, 看直播, 发微信这些操作, 都是通过这两种协议进行数据传输的当然数据的格式会有很多种, 例如视频(MP4), 图片(jpg)等等, (TCP/UDP)协议的最大区别是 一个基于连接, 另一个基于非连接, 下面我们举一个简单的例子来讲解, 我们以写信和打电话为例
2022-11-21 08:30:00
100
原创 [Redis-实战] 使用双拦截器实现短信验证码登录
项目链接: https://pan.baidu.com/s/1x2T7_zFA6LCRcYMOVo78pQ提取码: ge9k。思路 : 这里我们的采用两个拦截器来实现, 拦截器1主要实现路径拦截, 拦截器2主要负责token刷新并通过 .order(顺序) 来设置执行拦截器的顺序, 数字越小的越优先执行
2022-11-17 21:48:01
200
原创 springboot项目读取 .yml 配置文件,springboot中static静态变量读取yml文件配置
【代码】springboot项目读取 .yml 配置文件,springboot中static静态变量读取yml文件配置。
2022-11-14 17:13:35
435
2
原创 SpringBoot基于Session实现短信验证码登录
链接: https://pan.baidu.com/s/1LkJDNwV5THPoywbEX6Gpyg提取码: gajm
2022-11-13 18:42:32
319
转载 教你使用 Flowable 三种常见网关
Flowable 中网关类型其实也不少,常见的主要有三种类型,分别是:排他网关并行网关包容网关这三个里边最常用的当然就是排他网关了,今天松哥就来和小伙伴们聊一聊这三种网关,一起来体验一把这三种网关各自的特征。
2022-10-25 21:18:15
403
原创 初级程序员必会的Java注解用法
下载源码配合教程看有助于理解链接: https://pan.baidu.com/s/1RzpRWh8O-5LmvG1H1cVJYA提取码: tged
2022-10-24 08:30:00
105
原创 [Redis-客户端] RedisTemplate与StringRedisTemplate
🥞1. 项目源码🥞链接: https://pan.baidu.com/s/1iv2_vqLuLkJ-MhSw6VMMHw 提取码: m7cw
2022-10-07 11:59:07
421
原创 Redis 可视化工具 Mac中文版
链接: https://pan.baidu.com/s/1PZWm-rGEWHf5S-h2AVOm9A提取码: w684
2022-10-06 18:21:29
1908
6
原创 [Redis-客户端] Jedis直连与连接池的使用
问 : 为什么采用Jedis连接池呢?答 : 因为Jedis本身是线程不安全的, 如果频繁的建立连接和销毁连接, 会产生性能损耗, 因此使用连接池代替了直接连接的方式
2022-10-05 22:22:20
463
原创 [Redis-基础] 常用的SortedSet类型命令
ZADD key score member:添加一个或多个元素到sorted set ,如果已经存在则更新其score值ZREM key member:删除sorted set中的一个指定元素ZSCORE key member : 获取sorted set中的指定元素的score值ZRANK key member:获取sorted set 中的指定元素的排名ZCARD key:获取sorted set中的元素个数ZCOUNT key min max:统计score值在给定范围内的所有元素的个数Z
2022-10-04 09:51:11
424
原创 [Redis-基础] 常用的Set类型命令
SISMEMBER key member:判断一个元素是否存在于set中。SADD key member ... :向set中添加一个或多个元素。SINTER key1 key2 ... :求key1与key2的交集。SDIFF key1 key2 ... :求key1与key2的差集。SREM key member ... : 移除set中的指定元素。SUNION key1 key2 ..:求key1和key2的并集。SCARD key: 返回set中元素的个数。
2022-10-01 21:53:25
44
原创 [Redis-基础] 常用的List类型命令
LPUSH key element ... :向列表左侧插入一个或多个元素LPOP key:移除并返回列表左侧的第一个元素,没有则返回nilRPUSH key element ... :向列表右侧插入一个或多个元素RPOP key:移除并返回列表右侧的第一个元素LRANGE key star end:返回一段角标范围内的所有元素BLPOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素时等待指定时间,而不是直接返回nil
2022-09-27 14:18:26
36
原创 [Redis-基础] 常用的Hash类型命令
添加类型key person:user3 value的值为name zhangsan和 age 14。注 : 返回值为0 代表添加失败了, 这时我们添加一个正确的试试。注: 如果想修改年龄为20的话, 仅需要再执行一次即可。获取单独的name, age的value属性。一次性存储用户的 姓名, 年龄, 性别属性。一次性获储用户的 姓名, 年龄, 性别属性。判断是否包含sex属性, 有则添加。根据key获取所有的用户信息。获取所有的用户属性value。获取所有的用户属性key。这时才是正确的添加成功。
2022-09-27 08:15:00
202
原创 EsayExcel如何在业务层中获取表头?
在Excel导入的时候, 也避免不了有些用户不按照流程, 去导入一些奇奇怪怪的Excel模板, 来导致后端系统500报错, 这个时候就需要校验Excel的表头来判断模板是否正确
2022-09-20 08:30:00
664
原创 RabbitMQ 教你如何创建虚拟主机
虚拟主机可以理解为RabbitMQ中的重大特点,实际上在之前就已经存在虚拟主了。RāobitMQ如果没有配置,则默认会存在一个虚拟主机,当然用户也可以建立自己的虚拟主机,并目每一个虚拟主机中有自己的队列信息。
2022-09-19 08:30:00
827
1
转载 羊了个羊, 低配版开源代码来啦~
前几天朋友圈突然被一个小游戏 “羊了个羊” 刷屏了,出于好奇我也打算小玩一把试试,结果没想到上头了。。。游戏的玩法非常简单,类似 “消消乐”,从一堆方块中找到相同图案的 3 个方块并消除即可。
2022-09-17 14:42:27
6686
14
原创 [Redis-基础] 常用的String类型命令
这里给大家推荐一个在线redis网页版, 这样就可以方便快捷的测试一下redis命令啦Try Redis。
2022-09-14 08:30:00
179
原创 零基础学习OSI七层网络模型
这时, 双方都用OSI网络模型来沟通的话就会解决刚才的问题, 假设现在苹果电脑在自己的本机上搭建了一个web端网站, 戴尔电脑想访问这个网站就需要下载一个浏览器, 在后续的浏览器和网站之间的沟通就是应用层的事情了, 这里就用到我们最常见的应用层协议就是HTTP了, 后端的开发者就可以根据HTTP协议来编写代码啦, 这样就实现了浏览器和网站之间的沟通, 所以应用层其实就是最接近用户的那一层, 但是问题来了应用层仅仅是负责两个应用的联通, 实际物理上的联通是需要物理层的
2022-09-13 08:30:00
114
原创 Umami自建网站统计工具-免费开源的网站访问流量统计分析平台
几年前网站统计工具遍地都是,例如Google Analytics、百度统计、CNZZ、51啦、腾讯分析等都是免费开放给个人站长使用的,现在的情况是网站统计工具要么就是不再提供免费服务,要么就是对个人用户砍掉统计功能,停止「今日」与「实时在线」类数据指标的计算等。对于国内的个人站长来说,网站统计工具可供选择的就是谷歌统计和百度统计了,前者经常打不开影响网页的加载速度,所以很多的站长选择了百度统计。其实,除了选择这些大厂的统计服务外,我们还可以自建网站统计工具,就像图床、密码存储、网盘等我们都可以自建服
2022-09-10 19:49:43
892
原创 程序员学习的5个国外网站推荐
链接 :Newest Questions - Stack Overflow正在上传…重新上传取消https://stackoverflow.com/questionsStackOverFlow作为全球最大的技术问答交流网站, 浏览时也是纯英文网站所以首先养成用英文来搜索你的问题, 类似CSDN中的问答。
2022-09-05 08:30:00
556
原创 如何在手机或平板上编写代码?
支持语言包括 Java, C++, C, C#, JavaScript, CSS, PHP等很多主流开发语言地址 :1. 点击左上角的创建2. 选择对应的开发语音3. 输入文件命名4. 创建运行项目。
2022-09-04 17:02:08
6416
5
原创 RabbitMQ 利用DelayExchange插件实现延迟队列
大家在使用某宝的时候应该会遇到这样的场景, 自己选择的商品之后, 点击了提交订单, 但是并没有发起支付, 随后在待支付的页面就会看见刚刚的订单正在倒计时, 并且提示剩余时间 这里就会用到延迟队列, 等待时间倒计时结束后, 用户仍没有支付订单, 就会发送消息取消订单。当消息发送到延迟交换机中, 正常情况下交换机应该立即发送消息给队列, 不具备消息的存储功能, 而延迟交换机会帮你把消息暂存, 等过完5秒钟后才发送, 所以消息没有进行转发才导致刚刚的报错.这里值得注意的是, 在声明参数的时候多了一个。...
2022-08-29 08:30:00
362
原创 编程高效学习方法(费曼学习法)
费曼学习法是一种高效的学习方法,又称“快速学习法”。该学习法是由诺贝尔奖得主、著名教育家费曼根据自己的学习经历提出。费曼技巧的核心是:用自己简单的语言把复杂的观点表述出来。
2022-08-24 21:41:37
117
原创 Nacos 2.1.1 正式发布,翘起来 ~
但在更新后,由于 Nacos 2.0 的注册机制发生了一定的变化,同一个客户端针对同一个服务只能注册一个实例,这导致了 Nacos-Sync 这种代理服务模式无法使用同一个客户端进行同一个服务的多个实例的代理注册,易用性大大降低。同时社区发现,有一些特殊的应用,如网关,proxy,dubbo3 多协议支持等,也需要一些代理注册的能力,因此社区在进行数次方案讨论后,最终由社区同学 chenhao26-nineteen 完成批量注册服务的功能开发,并在 2.1.1 版本进行 beta 测试。...
2022-08-19 08:30:00
909
原创 docker中安装RabbitMQ(DelayExchange)插件
因为延迟队列的需求非常多,所以RabbitMQ的官方也推出了一个插件,原生支持延迟队列效果。这个插件就是DelayExchange插件。参考RabbitMQ的插件列表页面:https://www.rabbitmq.com/community-plugins.html
2022-08-17 08:31:07
1256
1
原创 Java 程序员面试要准备哪些?
回答:前端基本的操作肯定需要会,然后模仿其他页面能完成普通的前端CRUD效果,基本就够了,不一定非要全栈,规范点的大公司都是前后分离。建议学mysql就可以,oracle有精力可以研究下,银行电信偏爱oracle,但互联网公司等中小公司基本都是mysql(免费啊)存储过程建议了解,互联网公司都是禁止把代码写到存储过程到,但是有些传统公司偷懒也是用存储过程写业务。找工作面试阶段 (1周至1个月,如果3个月都找不到工作简历有大问题了)互联网公司喜欢问微服务,程序汪建议可以学阿里的dubbo框架,...
2022-08-13 18:04:28
261
原创 docker数据卷命令演示
create 创建一个volumeinspect 显示一个或多个volume的信息Is 列出所有的volumeprune 删除未使用的volumerm 删除一个或多个指定的volume
2022-08-11 22:12:35
466
原创 RabbitMQ 死信交换机TTL演示demo
满足死信交换机有三种情况分别是 :消费者使用basic.reject或 basic.nack声明消费失败,并且消息的requeue参数设置为false消息是一个过期消息,超时无人消费要投递的队列消息满了,无法投递3.死信队列和失败消息队列的区别在上篇文章讲到的因为消费者内部出现异常, 导致重试次数耗尽, 为了消息不会丢弃, 我们直接将消费者消息发送到(error.direct)失败交换机中如下图所示这次我们所讲的死信交换机种, 我们发现明显的差别, 在死信中,.........
2022-08-08 08:30:00
107
JAVA面试核心知识点整理(0积分下载).pdf
2022-12-02
常见面试题 :分布式+微服务+MYSQL+Redis+JVM+Spring等等(0积分下载)
2022-09-25
Java常用的反射方法
2022-09-24
EsayExcel在业务层中获取表头源码(0积分下载)
2022-09-17
为找工作的小伙伴准备的125套简历模板(0积分下载)
2022-09-10
Typora 最后一个免费的版本 0积分下载
2022-07-13
Typora免费版本0.11.18
2022-04-19
Java 如何提高递归树结构的查询效率(7层级)
2022-08-30
docker参照数据卷目录, 但未找到该路径
2022-08-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人