自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 设计模式2:同步模式之保护性暂停

系列文章目录文章目录系列文章目录一、定义二、思路三、代码实现一、定义即 Guarded Suspension,用在一个线程等待另一个线程的执行结果要点有一个结果需要从一个线程传递到另一个线程,让他们关联同一个 GuardedObject如果有结果不断从一个线程到另一个线程那么可以使用消息队列(见生产者/消费者)JDK 中,join 的实现、Future的实现,采用的就是此模式 因为要等待另一方的结果,因此归类到同步模式二、思路三、代码实现class GuardedObject {

2021-10-05 15:47:55 299

原创 设计模式1:两阶段终止设计模式

文章目录一、思路二、 利用 isInterrupted三、 利用停止标记总结一、思路二、 利用 isInterruptedinterrupt 可以打断正在执行的线程,无论这个线程是在 sleep,wait,还是正常运行class TPTInterrupt { private Thread thread; public void start(){ thread = new Thread(() -> { while(true) { Thread current =

2021-10-03 16:23:25 225

原创 JAVA并发编程-2 终止线程的方法

文章目录一、使用stop方法终止线程(不推荐,可能发生不可预料的结果)二、使用interrupt方法中断线程一、使用stop方法终止线程(不推荐,可能发生不可预料的结果)Thread.stop()二、使用interrupt方法中断线程interrupt主要是用来打断 sleep,wait,join 的线程这几个方法都会让线程进入阻塞状态interrupted():打断当前线程。interrupted()方法具有清除状态的功能,即执行后具有将状态标识清除为false。isInterrupt

2021-10-03 15:52:08 212

原创 JAVA并发编程-1 创建线程的方式

文章目录一、直接使用Thread二、使用 Runnable 配合 Thread三、FutureTask 配合 Thread一、直接使用Thread// 创建线程对象Thread t = new Thread() { public void run() { // 要执行的任务 }};// 启动线程t.start();二、使用 Runnable 配合 Thread把【线程】和【任务】(要执行的代码)分开Thread 代表线程Runnable 可运行的任务(线程要执行的代码

2021-10-03 15:15:15 142

原创 简单聊一下JAVA IO模型

系列文章目录文章目录系列文章目录前言一、BIO - Blocking IO缺点应用场景二、NIO- Non Blocking IO应用场景:NIO 有三大核心组件: Channel(通道), Buffer(缓冲区),Selector(多路复用器)Epoll函数详解Redis线程模型三、AIO应用场景:为什么Netty使用NIO而不是AIO?前言IO模型就是指用什么样的通道进行数据的发送和接收,JAVA支持的三种网络编程模型BIO、NIO、AIO一、BIO - Blocking IO同步阻塞模型,

2021-09-20 18:15:10 114

原创 JVM学习之旅–简单谈一下GC

文章目录一、Young GC1 什么是Young GC?2 什么条件会触发Young GC二 Full GC1 什么是Full GC?2 什么条件会触发Full GC三 Major GC1 什么是Major GC?四 Mixed GC一、Young GC1 什么是Young GC?Young GC也成为了Minor GC,大家都知道这是新生代的GC2 什么条件会触发Young GCYoung GC一般是在新生代的Eden区域满了之后就会触发,采用标记复制算法来进行垃圾回收二 Full GC

2021-09-19 15:16:47 189

原创 这周不知道写点什么

周末快乐~

2021-09-12 23:08:17 65

原创 JVM学习之旅–垃圾回收算法 4

JVM学习之旅–垃圾回收算法 4文章目录JVM学习之旅–垃圾回收算法 4一、新生代 - 标记复制缺点优化二、对象如何进入老年代1参数2 动态年龄判断3 大对象直接进入老年代4 Minor GC后对象太多,无法放入Survivor直接进入老年代三、老年代 - 标记整理四、常见的垃圾回收器Serial与Serial OldParNew与CMSG1垃圾回收器G1垃圾回收一、新生代 - 标记复制给新生代内存划分为两块区域,只是用其中一块,当使用的这块内存快满的时候,就把里面存活的对象一次性转移到另一块区域

2021-09-05 13:14:27 110

原创 JVM学习之旅--垃圾回收 3

JVM学习之旅–垃圾回收 3文章目录JVM学习之旅--垃圾回收 3一、为什么要进行垃圾回收二、什么情况会触发垃圾回收JAVA中对象的不同引用类型强引用软引用弱引用虚引用拓展: 假如没有GC Roots引用的对象,一定立马被回收吗?一、为什么要进行垃圾回收JAVA堆内存里面创建的对象,都是占用内存资源,而且内存资源有限JAVA垃圾回收机制是一个后台自动运行的线程二、什么情况会触发垃圾回收当新生代或者老年代里面的对象快要满了的时候,此时会触发垃圾回收,把新生代或老年代没有人引用的对象给回收掉,释放内

2021-08-29 19:50:25 111

原创 JVM学习之旅--JVM内存区域 2

JVM学习之旅–JVM内存区域 2文章目录JVM学习之旅--JVM内存区域 2前言一、JVM内存区域划分前言一、JVM内存区域划分直接上图1.方法区主要存放.class文件里加载进来的类信息还有常量池JDK1.8后, 改名为 Metaspace 元数据空间2 程序计数器执行字节码指令时候,JVM需要程序计数器用来记录当前执行字节码指令位置3 JAVA虚拟机栈用来保存每个方法内的局部变量等参数每个线程都有自己的JAVA虚拟机栈当线程执行一个方法,会对这个方法调用创建对应的一个栈

2021-08-27 21:08:14 83

原创 JVM学习之旅--JVM类加载机制 1

JVM学习之旅–JVM类加载机制 1文章目录JVM学习之旅--JVM类加载机制 1前言一、整体过程二、JVM加载过程三、什么时候会初始化一个类四、类加载器1 启动类加载器 Bootstrap ClassLoader2 扩展类加载器 Extension ClassLoader3 应用程序类加载器 Application ClassLoader4 自定义类加载器五、双亲委派机制什么意思?前言JVM整体的运行过程是 先把我们编写的.java代码文件编译成.class字节码文件,然后类加载器把.clas

2021-08-22 18:09:52 116

原创 OWASP TOP10系列之#TOP10# A10-Insufficient Logging & Monitoring

OWASP TOP10系列之#TOP10# A10-Insufficient Logging & Monitoring 日志记录和监控不足文章目录OWASP TOP10系列之#TOP10# A10-Insufficient Logging & Monitoring 日志记录和监控不足如何防御总结任何时候都会发生日志记录、检测、监控和主动响应不足的情况:未记录可审计的事件,例如登录、登录失败和高价值交易。警告和错误不会产生、不充分或不清楚的日志消息。应用程序和 API 的日志不会受

2021-08-15 14:04:02 271

原创 # OWASP TOP10系列之#TOP9# A9-使用具有已知漏洞的组件

OWASP TOP10系列之#TOP9# A9-使用具有已知漏洞的组件文章目录OWASP TOP10系列之#TOP9# A9-使用具有已知漏洞的组件前言可能发生问题的情况如何预防总结前言组件密集型开发模式可能导致开发团队甚至不了解他们在应用程序或 API 中使用了哪些组件,更不用说让它们保持最新状态。可能发生问题的情况如果您不知道您使用的所有组件(客户端和服务器端)的版本。这包括您直接使用的组件以及嵌套的依赖项。如果软件易受攻击、不受支持或已过期。这包括操作系统、Web/应用程序服务器、数据库

2021-08-15 14:00:22 458

转载 OWASP TOP10系列之TOP8 # A8 不安全的反序列化

OWASP TOP10系列之#TOP8# A8-Insecure Deserialization 不安全的反序列化文章目录OWASP TOP10系列之#TOP8# A8-Insecure Deserialization 不安全的反序列化前言一、Insecure Deserialization 不安全的反序列化是什么?什么情况有反序列化安全问题怎么防御反序列化攻击?其他防御措施误区总结前言一、Insecure Deserialization 不安全的反序列化是什么?有些时候我们需要把应用程序中的数据以

2021-08-15 13:49:48 545

原创 OWASP TOP10系列之#TOP7# A7-Cross-Site Scripting (XSS)

OWASP TOP10系列之#TOP7# A7-Cross-Site Scripting (XSS)文章目录OWASP TOP10系列之#TOP7# A7-Cross-Site Scripting (XSS)前言一、XSS是什么?二、如何防御总结前言Cross-Site Scripting (XSS) 即跨站域脚本攻击,XSS 是 OWASP Top 10 中第二个最普遍的问题,在所有应用程序的大约三分之二中都存在。一、XSS是什么?反射型 (Reflected )XSS:应用程序或 API

2021-08-15 13:36:23 360

原创 OWASP TOP10系列之#TOP6# A6-Security Misconfiguration(安全配置错误)

OWASP TOP10系列之#TOP6# A6-Security Misconfiguration(安全配置错误)文章目录OWASP TOP10系列之#TOP6# A6-Security Misconfiguration(安全配置错误)一、Security Misconfiguration(安全配置错误)是什么?二、什么情况会导致三、如何防御总结一、Security Misconfiguration(安全配置错误)是什么?攻击者通常会尝试利用未修补的缺陷或访问默认帐户、未使用的页面、未受保护的文件

2021-08-15 13:22:57 938

原创 OWASP TOP10系列之#TOP5# A5-Broken Access Control

OWASP TOP10系列之#TOP5# A5-Broken Access Control文章目录OWASP TOP10系列之#TOP5# A5-Broken Access Control前言一、Broken Access Control是什么?二、常见攻击方式三、如何防御四、攻击场景总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考

2021-08-14 21:06:19 785

原创 OWASP TOP10系列之#TOP4# A4-XML 外部实体 (XXE)

OWASP TOP10系列之#TOP4# A4-XML 外部实体 (XXE)文章目录OWASP TOP10系列之#TOP4# A4-XML 外部实体 (XXE)前言一、XXE是什么?二、什么情况会造成XXE三、如何预防总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、XXE是什么?XML External Entities

2021-08-14 20:56:33 437

转载 bump-the-pointer 和 TLABs 机制

JVM的GC用到了一些加速内存分配的技术,简单总结如下Bump-the-pointer(指针碰撞)技术跟踪在Eden空间创建的最后一个对象,这个对象会被放在Eden空间的顶部。如果之后需要创建对象,只需检查Eden空间是否有足够的剩余空间。如果有足够的空间,对象就会被创建在Eden空间,并且被放置在顶部(此时会更换标记位)。这样一来,每次创建新的对象时,只需要检查最后被创建的对象。这将极大地加快内存分配速度。但是,如果我们在多线程的情况下,事情将截然不同。如果想要以线程安全的方式以多线程在伊甸园空间存储.

2021-08-10 22:58:20 290

原创 OWASP TOP10系列之#TOP3# A3-敏感数据暴露

OWASP TOP10系列之#TOP3# A3-敏感数据暴露提示:本系列将介绍OWASP TOP10 安全漏洞相关介绍,主要针对漏洞类型、攻击原理以及如何防御进行简单讲解;如有错误,还请大佬指出,定会及时改正~文章目录OWASP TOP10系列之#TOP3# A3-敏感数据暴露前言一、敏感数据暴露是什么?二、什么情况会出现敏感数据暴露三、如何防御总结前言敏感数据暴露,即Sensitive Data Exposure一、敏感数据暴露是什么?攻击者不是直接攻击,而是窃取密钥、执行中间人攻

2021-08-07 21:31:50 873

原创 OWASP TOP10系列之#TOP2# A2-损坏的身份认证

系列文章目录提示:本系列将介绍OWASP TOP10 安全漏洞相关介绍,主要针对漏洞类型、攻击原理以及如何防御进行简单讲解;如有错误,还请大佬指出,定会及时改正~文章目录系列文章目录前言一、损坏的身份认证漏洞是什么?二、什么情况下会发生损坏的身份认证漏洞三、如何预防?四、身份验证的保证级别 1:密码级别 2:多因素身份验证级别 3:基于密码的身份验证会话管理会话生成和到期总结前言损坏的身份认证,即Broken Authentication一、损坏的身份认证漏洞是什么?由于身份认证和访问

2021-08-07 19:06:28 424

原创 OWASP TOP10系列之#TOP1# A1-注入类

OWASP TOP10系列之#TOP1# 注入类提示:本系列将介绍OWASP TOP10 安全漏洞相关介绍,主要针对漏洞类型、攻击原理以及如何防御进行简单讲解;如有错误,还请大佬指出,定会及时改正~文章目录OWASP TOP10系列之#TOP1# 注入类前言一、注入类漏洞是什么?二、什么情况下会产生注入类漏洞问题?三、如何预防?四、具体示例1.SQL注入2.OS命令注入3.XPath注入总结前言在OWASP(开放式Web应用程序安全项目)公布的10项最严重的Web 应用程序安全风险列表的在

2021-08-07 16:05:41 869

原创 Instrumentation类方法简单介绍

文章目录前言一、Instrumentation类1.addTransformer(ClassFileTransformer transformer, boolean canRetransform)2.addTransformer(ClassFileTransformer transformer)3.removeTransformer(ClassFileTransformer transformer)4.isRetransformClassesSupported()5.retransformClasses(C

2021-08-01 22:56:50 2532

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除