首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
exposure
掘友等级
点赞是一种阅读礼仪
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
11
文章 11
沸点 0
赞
11
返回
|
搜索文章
exposure
3年前
关注
透过AccessController深入了解Java安全模型
首先我们先了解一个概念,在Java的设计中,实际上是有安全上的考虑,但是大家在开发过程中,很少接触这方面,也几乎用不到。所以关于这方面的材料也不多,网上找到的基本都是Jav...
2
2
分享
exposure
赞了这篇文章
exposure
4年前
关注
volatile关键字原理
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,...
2
评论
分享
exposure
赞了这篇文章
exposure
4年前
关注
死磕Synchronized底层实现--偏向锁
本文分析的JVM版本是JVM8,具体版本号以及代码可以在这里看到。 目前网上的很多文章,关于偏向锁源码入口都找错地方了,导致我之前对于偏向锁的很多逻辑一直想不通,走了很多弯...
2
评论
分享
exposure
赞了这篇文章
exposure
4年前
关注
解决在Filter中读取Request中的流后, 然后再Control中读取不到的做法
我们来看一下核心代码: filter中主要做的事情, 就是来校验请求是否合法, 是否有篡改过值. 大家都知道, 流只能读一次, 读了就没有了, 为了后面的代码还能够取得流,...
2
评论
分享
exposure
4年前
关注
前后端分离下的接口调用安全可选方案
3.访问受限资源时,客户端带入AccessToken就可访问。 如果不对请求进行签名认证,那么可以简单的通过fiddler等工具轻易抓包拿到数据,并进行篡改,提交,大规模批...
1
评论
分享
exposure
4年前
关注
JVM之Metaspace
根据JVM内存区域的划分,简单的画了下方的这个示意图。区域主要分为两大块,一块是堆区(Heap),我们所New出的对象都会在堆区进行分配,在C语言中的malloc所分配的方...
2
评论
分享
exposure
4年前
关注
JVM直接引用和符号引用
1. 符号引用 可以看到Class文件里有一段叫做“常量池(Constant pool)”,里面存储的该Class文件里的大部分常量的内容。 其中0xB6是invokevi...
1
评论
分享
exposure
4年前
关注
JVM原理之GC垃圾回收器CMS详解
1. 初始标记(CMS-initial-mark) ,会导致swt; 2. 并发标记(CMS-concurrent-mark),与用户线程同时运行; 3. 预清理(CMS-...
4
1
分享
exposure
4年前
关注
JAVA陷阱---三元表达式潜藏的坑
如上图所示,第12--21行即c的操作过程,可以看出第18行Double.doubleValue获取c的小double值就是抛出NPE的罪魁祸首。 可以看到确实没有对c的D...
赞
评论
分享
exposure
4年前
关注
JVM原理之GC垃圾回收器G1详解
G1(Garbage First)垃圾收集器是当今垃圾回收技术最前沿的成果之一。早在JDK7就已加入JVM的收集器大家庭中,成为HotSpot重点发展的垃圾回收技术。同优秀...
5
2
分享
exposure
4年前
关注
JVM原理之GC垃圾收集器与内存分配策略
物。事实上,GC的历史比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分 配和垃圾收集技术的语言。当Lisp还在胚胎时期时,人们就在思考GC需要完成...
赞
评论
分享
exposure
4年前
关注
JVM原理之GC内存分配
进去,墙里面的人却想出来。 一个对象生命开始到终结的维护责任。 一切看起来都很美好。不过,也正是因为Java程序员把内存控制的权力交给了Java虚拟机, 将会成为一项异常艰...
赞
评论
分享
exposure
4年前
关注
String、StringBuilder、StringBuffer 对比
众所周知,String是由字符组成的串,在程序中使用频率很高。Java中的String是一个类,而并非基本数据类型。 不过她却不是普通的类哦!!! 我们都知道,Java程序...
赞
评论
分享
exposure
4年前
关注
死磕Synchronized底层实现--重量级锁
在inflate中完成膨胀过程。 inflate中是一个for循环,主要是为了处理多线程同时调用inflate的情况。然后会根据锁对象的状态进行不同的处理: 1.调用omA...
赞
评论
分享
exposure
4年前
关注
死磕Synchronized底层实现--轻量级锁
本人看的JVM版本是jdk8u,具体版本号以及代码可以在这里看到。 下面开始轻量级锁获取流程分析,代码在bytecodeInterpreter.cpp#1816。 如果锁对...
赞
评论
分享
exposure
4年前
关注
死磕Synchronized底层实现--概论
从上面的中文注释处可以看到,对于synchronized关键字而言,javac在编译时,会生成对应的monitorenter和monitorexit指令分别对应synchr...
赞
评论
分享
exposure
4年前
关注
Kafka史上最详细原理
Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大...
3
评论
分享
exposure
4年前
关注
zookeeper原理
Apache ZooKeeper 由 Apache Hadoop 的子项目发展而来,是Java语言开发,于 2010 年 11 月正式成为了 Apache 的顶级项目。 Z...
12
评论
分享
exposure
4年前
关注
深入分析 Java I/O (四)AIO
异步IO则采用“订阅-通知”模式:即应用程序向操作系统注册IO监听,然后继续做自己的事情。当操作系统发生IO事件,并且准备好数据后,在主动通知应用程序,触发相应的函数 和同...
1
评论
分享
下一页
个人成就
文章被点赞
56
文章被阅读
49,898
掘力值
631
关注了
0
关注者
42
收藏集
0
关注标签
2
加入于
2019-01-02