Wesley13 Wesley13
3年前
java 面试知识点笔记(十一)多线程与并发
自适应自旋锁:(java6引入,jvm对锁的预测会越来越精准,jvm也会越来越聪明)1.自选次数不再固定2.由前一次在同一个锁上的自旋时间及锁拥有者的状态来决定(如果在同一个锁对象上自旋等待刚刚成功获取过锁并且持有锁的线程正在运行中,jvm会认为该锁自旋获取到锁的可能性很大,会自动增加等待时间,相反jvm如果可能性很小会省掉自旋过程,
Wesley13 Wesley13
3年前
java反序列化——XMLDecoder反序列化漏洞
前言最近学习java反序列化学到了weblogic部分,weblogic之前的两个反序列化漏洞不涉及T3协议之类的,只是涉及到了XMLDecoder反序列化导致漏洞,但是网上大部分的文章都只讲到了触发XMLDecoder部分就结束了,并没有讲为什么XMLDecoder会触发反序列化导致命令执行。于是带着好奇的我就跟着调了一下XMLDecoder的
Wesley13 Wesley13
3年前
Java多线程信号量同步类CountDownLatch与Semaphore
  信号量同步是指在不同线程之间,通过传递同步信号量来协调线程执行的先后次序。CountDownLatch是基于时间维度的Semaphore则是基于信号维度的。1:基于执行时间的同步类CountDownLatch  例如现有3台服务器,需编写一个获取各个服务器状态的接口,准备开三个子线程每个线程获取一台服务器状态后统一返回三台
Wesley13 Wesley13
3年前
Java JDK安装,你不知道的文件丢失问题!!!!
很多用户在安装好JDK后编译时会出现报错信息,去到JDK安装目录下才发现tools.jar文件丢失了,导致无法正常编译。遇到这种问题,可能是因为本台计算机有安装JDK的历史,不同版本之间互相影响造成的,也可能是一些计算机自身因素造成的,这个就不需要去仔细研究啦~因为本人也遇到了类似的问题,网上很难直接找到一个tools.jar包,
小万哥 小万哥
1年前
Java 包装类:原始数据类型与迭代器
JavaIteratorIterator接口提供了一种迭代集合的方法,即顺序访问集合中的每个元素。它支持hasNext()和next()方法,用于检查是否存在下一个元素以及获取下一个元素。获取Iterator可以使用集合的iterator()方法获取Ite
不是海碗 不是海碗
2年前
验证码短信 API 接入指南:Java 语言示例代码
短信验证码是一种通过短信发送的验证码,通常用于验证用户的身份、保障账户安全和防止恶意攻击等。短信验证码已经成为现代社会中不可或缺的一部分,广泛应用于各种场景,包括用户注册和登录、找回密码等等。为了满足企业在账户安全验证和业务发展方面的需求,验证码短信API
小万哥 小万哥
2年前
Java基础知识:面试官必问的问题
数据类型基本类型byte/8char/16short/16int/32float/32long/64double/64boolean/boolean只有两个值:true、false,可以使用1bit来存储,但是具体大小没有明确规定。JVM会在编译时期将bo
玉宇琼楼 玉宇琼楼
1年前
Java Websocket实现即时通讯功能入门教程
近年来,即时通讯(InstantMessaging)已经成为了人们日常生活中不可缺少的一部分。而JavaWebsocket技术则提供了一种简便高效的方式来实现即时通讯功能。本文将介绍如何使用JavaWebsocket来实现即时通讯,并提供具体的代码示例。一