标签:字节码

Java

自定义Lombok注解

4

changyuan.xu 发布于 2019-03-18

Java 是一门"繁琐"的语言,使用 Lombok 可以显著地减少样板代码。比如使用 @Getter 注解可以为你的私有属性创建 get 方法。 源代码 @Getter private int age = 10; 生成后代码 private int age =...

阅读(9)评论(0)赞 (0)

Java

独家!阿里开源自用 OpenJDK 版本,Java 社区迎来中国力量

小丁 发布于 2019-03-18

InfoQ 记者独家获悉:阿里巴巴宣布重磅开源 OpenJDK 长期支持版本 Alibaba Dragonwell。众所周知,Oracle 对 Java 的策略已经发生系列转变,由于 Java 用户群体庞大,导致此事在很长一段时间内都是开发者的讨论焦点。作为世界上最大的 Java...

阅读(8)评论(0)赞 (0)

Java

浅谈RASP技术攻防之基础篇

11

puefu.he 发布于 2019-03-18

引言 本文就笔者研究RASP的过程进行了一些概述,技术干货略少,偏向于普及RASP技术。中间对java如何实现rasp技术进行了简单的举例,想对大家起到抛砖引玉的作用,可以让大家更好的了解一些关于web应用程序安全防护的技术。文笔不好,大家轻拍。 一 、什么是RASP? 在201...

阅读(8)评论(0)赞 (0)

Java

Netty解决TCP粘包和拆包问题的四种方案 原 荐

3

darida 发布于 2019-03-18

在RPC框架中,TCP粘包和拆包问题是必须解决一个问题,因为RPC框架中,各个微服务相互之间都是维系了一个TCP长连接,比如dubbo就是一个全双工的长连接。由于微服务往对方发送信息的时候,所有的请求都是使用的同一个连接,这样就会产生粘包和拆包的问题。本文首先会对TCP粘包和拆包...

阅读(7)评论(0)赞 (0)

Java

Java 11 新特性介绍

2

changyuan.xu 发布于 2019-03-18

Java 11 已于 9 月 25 日正式发布,之前在Java 10 新特性介绍中介绍过,为了加快的版本迭代、跟进社区反馈,Java 的版本发布周期调整为每六个月一次——即每半年发布一个大版本,每个季度发布一个中间特性版本,并且做出不会跳票的承诺。通过这样的方式,Java 开发团...

阅读(10)评论(0)赞 (0)

Spring

吃透动态代理,解密spring AOP源码(四)

2

hellas 发布于 2019-03-18

前面讲到了动态代理的底层原理,接下来我们来看一下aop的动态代理. Spring AOP使用了两种代理机制:一种是基于JDK的动态代理,一种是基于CGLib的动态代理. ①JDK动态代理:使用JDK创建代理有一个限制,它只能为接口创建代理实例.这一点可以从Proxy的接口方法 n...

阅读(8)评论(0)赞 (0)

Java

浅谈RASP技术攻防之基础篇

11

尖兵 发布于 2019-03-18

引言 本文就笔者研究RASP的过程进行了一些概述,技术干货略少,偏向于普及RASP技术。中间对java如何实现rasp技术进行了简单的举例,想对大家起到抛砖引玉的作用,可以让大家更好的了解一些关于web应用程序安全防护的技术。文笔不好,大家轻拍。 一 、什么是RASP? 在201...

阅读(12)评论(0)赞 (0)

Java

由一道面试题理解类加载机制

2

changyuan.xu 发布于 2019-03-17

前言 不了解JVM的类加载机制你也可以coding,但是当你了解之后,可以让你在coding的时候避免很多坑,本文将以一道常见的面试题去剖析一下。本文参考 深入理解Java虚拟机(第2版) 。 1public class ClassLoadTest { 2 private sta...

阅读(11)评论(0)赞 (0)

Java

从宏观微观角度浅析JVM虚拟机

8

zhuangli 发布于 2019-03-17

1.问题 1、JAVA文本文件如何被翻译成CLASS二进制文件? 2、如何理解CLASS文件的组成结构? 3、虚拟机如何加载使用类文件的生命周期? 4、虚拟机系列诊断工具如何使用? 5、虚拟机内存淘汰机制? 6、虚拟机指令集架构? 2.关键词 编译,魔数,常量池,字面量,数据表,...

阅读(22)评论(0)赞 (0)

Java

JAVA中锁的深入理解与解析

6

xirruiqiang 发布于 2019-03-14

如果想要透彻的理解java锁的来龙去脉,需要先了解以下基础知识。 基础知识之一:锁的类型 锁从宏观上分类,分为悲观锁与乐观锁。 乐观锁 乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期...

阅读(24)评论(0)赞 (0)

Java

dubbo源码解析(四十二)序列化——开篇

1

尖兵 发布于 2019-03-14

序列化——开篇 目标:介绍dubbo中序列化的内容,对dubbo中支持的序列化方式做对比,介绍dubbo-serialization-api下的源码 前言 序列化就是将对象转成字节流,用于网络传输,以及将字节流转为对象,用于在收到字节流数据后还原成对象。序列化的好处我就不多说了,...

阅读(18)评论(0)赞 (0)

Java

写给 Java 程序员的 Java 虚拟机学习指南

1

尖兵 发布于 2019-03-14

大家好,我是极客时间 《深入拆解 Java 虚拟机》 作者、Oracle Labs 高级研究员郑雨迪。有幸借这个专题的机会,能和大家分享为何 Java 工程师要学 Java 虚拟机?如何掌握 Java 虚拟机? 工欲善其事,必先利其器 “为什么学 Java 虚拟机”这个问题,就和...

阅读(23)评论(0)赞 (0)

Spring

吃透动态代理,解密spring AOP源码(三)

7

xiaoli.wang 发布于 2019-03-14

上节讲到动态代理生成的类为$Proxy0,但是在我们项目里面却不存在,实际我们是用了这个实现类调用了方法,想要知道这个问题,首先要理解 类的完整生命周期 . Java源文件:即我们在IDE里面写的.java文件 Java字节码:即编译器编译之后的.class文件(javac命令)...

阅读(26)评论(0)赞 (0)

Java

深入剖析Java即时编译器(下)

7

dulong 发布于 2019-03-14

在引入分层编译之前,我们需要手动的选择编译器。对于启动性能有要求的短时运行程序,我们会选择C1编译器,对应参数-client,对于长时间运行的对峰值性能有要求的程序,我们会选择C2编译器,对应参数-server。 Java7引入了分层编译,使用-XX:+TieredCompila...

阅读(18)评论(0)赞 (0)

Java

JAVA多线程使用场景和注意事项

4

wenming.gapo 发布于 2019-03-13

我曾经对自己的小弟说,如果你实在搞不清楚什么时候用HashMap,什么时候用ConcurrentHashMap,那么就用后者,你的代码bug会很少。 他问我:ConcurrentHashMap是什么? -.- 编程不是炫技。大多数情况下,怎么把代码写简单,才是能力。 多线程生来就...

阅读(21)评论(0)赞 (0)

Java

JAVA多线程使用场景和注意事项

3

changyuan.xu 发布于 2019-03-13

我曾经对自己的小弟说,如果你实在搞不清楚什么时候用HashMap,什么时候用ConcurrentHashMap,那么就用后者,你的代码bug会很少。 他问我:ConcurrentHashMap是什么? -.- 编程不是炫技。大多数情况下,怎么把代码写简单,才是能力。 多线程生来就...

阅读(17)评论(0)赞 (0)

Spring

Spring Boot Actuators配置不当导致RCE漏洞复现

9

yeseng 发布于 2019-03-12

漏洞分析源地址: https://www.veracode.com/blog/research/exploiting-spring-boot-actuators 关于springboot监控可以参考以下文章: https://www.freebuf.com/news/193509...

阅读(38)评论(0)赞 (0)

Java

java 异步并行框架 async-01-入门教程

changyuan.xu 发布于 2019-03-12

项目简介 Async 是一款 Java 异步处理框架。 设计目的 并行执行可以大幅度提升程序的运行速度,有效利用 CPU 资源。 但是单独为每次方法都使用线程池手写,显然不够优雅,复用性也很差。 特性 支持接口类的动态代理异步 支持非接口类的 CGLIB 代理异步 快速入门 具体...

阅读(20)评论(0)赞 (0)