标签:value

Java

这篇 ReentrantLock 看不懂,加我我给你发红包

21

小丁 发布于 2020-01-20

点击蓝色“ zhisheng ”关注我哟 加个“ 星标 ”,一起快乐成长 回答一个问题 在开始本篇文章的内容讲述前,先来回答我一个问题,为什么 JDK 提供一个 synchronized 关键字之后还要提供一个 Lock 锁,这不是多此一举吗?难道 JDK 设计人员都是沙雕吗? ...

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

Java

细嚼慢咽 Java 线程池,你品你细品

2

songhua.gao 发布于 2020-01-20

Photo By Instagram natgeoadventure 问题 13 你好同学,我是今天的面试官。咱们来聊聊平时开发中为什么要使用线程池技术,Java 线程池它具体是怎么实现的 ? 好处多多 假设我们不使用线程池技术,那么就在任务来临时刻启动一个新...

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

Java

ASM 匿名内部类 & Lambda 表达式的处理

尖兵 发布于 2020-01-20

简单总结使用 ASM 时遇到匿名内部类时,如何对匿名内部类(一般来说接口)的方法实现插桩。 痛点 通过之前的 当 Java 字节码遇到 ASM 一文,对如何使用 ASM 已经有了初步的了解。这里再来看一种比较特殊的情况,当遇到匿名内部类时,如何确定 hack 结点。 接口作为匿名...

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

Java

Gradle Transform + ASM 探索

4

hellas 发布于 2020-01-20

使用 Gradle Transform + ASM 实现代码插桩的使用已经非常普遍。本文试图探索如何更加快速简洁的利用 Transform 实现代码插桩,并尝试实现 通过注解对任意类当中所有的方法 实现计算方法耗时 的插桩 通过配置实现对任意类(主要是针对第三方库)当中指定方法的...

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

Spring

200119-SpringBoot系列教程之声明式事务Transactional

1

puefu.he 发布于 2020-01-19

当我们希望一组操作,要么都成功,要么都失败时,往往会考虑里利用事务来实现这一点;之前介绍的db操作,主要在于单表的CURD,本文将引入声明式事务 @Transactional 的使用姿势 I. 配置 本篇主要介绍的是 jdbcTemplate 配合事务注解 @Transactio...

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

Java

了解NonHeap吗?

3

Harries 发布于 2020-01-19

在我们日常的开发过程中,遇到问题除了普通的异常(空指针啊,数组越界啊 and so on),我们遇到的比较大的问题无非就是 OOM ,频繁 FullGC 或者是多线程方面的问题(这块我说不上话:new_moon_with_face:),我们大都数产生的问题也都是与 JVM 相关的...

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

Java

Gradle Transform + ASM 探索

4

尖兵 发布于 2020-01-19

使用 Gradle Transform + ASM 实现代码插桩的使用已经非常普遍。本文试图探索如何更加快速简洁的利用 Transform 实现代码插桩,并尝试实现 通过注解对任意类当中所有的方法 实现计算方法耗时 的插桩 通过配置实现对任意类(主要是针对第三方库)当中指定方法的...

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

Spring

搞定SpringBoot多数据源(2):动态数据源

2

刘莉莉 发布于 2020-01-19

对于多个数据库的处理,上一篇文章《 搞定SpringBoot多数据源(1):多套源策略 》已有提及,有多套数据源、动态数据源、参数化变更数据源等方式,本文是第二篇:“动态数据源”。动态数据源可以解决多套数据源的处理不够灵活、占用资源多等问题。用户可以根据实际的业务需要,统一操作逻...

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

Spring

享读SpringMVC源码2-@RequestMapping注解源码

1

hellas 发布于 2020-01-19

一个人可以走的很快,但一群人可以走的更远 ,新的一年我想遇到优秀的你 1. 回顾 上节,说了Handler的4种定义方式,以及Handler与HandlerMapping的关系。 @RequestMapping方式是我们最常用的定义handler的方式。 RequestMappi...

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

Spring

Spring Boot手把手教学(3):从零配置logback日志

1

songhua.gao 发布于 2020-01-19

使用logback我们可以自定义控制台日志输出,可以实现对不同日志不同级别打印到不同的文件中,可以对日志进行归档保存,并定时删除; 对于一个应用来讲,一个好的日志系统,对于对问题的追溯有很大的帮助,也有助于线上问题的查找和解决,所以我们来配置下 logback日志 。 我们在初始...

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

Java

你真的了解 volatile 关键字吗?

puefu.he 发布于 2020-01-19

今天,让我们一起来探讨Java 并发编程中的知识点:volatile 关键字 本文主要从以下三点讲解 volatile 关键字: volatile 关键字是什么? volatile 关键字能解决什么问题?使用场景是什么? volatile 关键字实现的原理? 在 Sun 的 JD...

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

Spring

SpringSecurity 初始化流程源码

8

zhuangli 发布于 2020-01-19

SpringSecurity 初始化流程源码 本篇主要讲解 SpringSecurity初始化流程的源码部分,包括核心的 springSecurityFilterChain 是如何创建的,以及在介绍哪里可以扩展个性化的配置,SpringSecurity源码其实是蛮难得 各种Bui...

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

Java

List去重问题与方法

2

darida 发布于 2020-01-19

面试中经常被问到的 list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固。 我们大家都知道, set集合的特点就是没有重复的元素。如果集合中的数据类型是基本数据类型,可以直接将list集合转换成set,就会自动去除重复的元素,这个就...

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

Java

List去重问题与方法

2

xiaoli.wang 发布于 2020-01-19

面试中经常被问到的 list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固。 我们大家都知道, set集合的特点就是没有重复的元素。如果集合中的数据类型是基本数据类型,可以直接将list集合转换成set,就会自动去除重复的元素,这个就...

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

Java

解析Serializable原理

zhuangli 发布于 2020-01-19

通常我们使用Java的序列化与反序列化时,只需要将类实现 Serializable 接口即可,剩下的事情就交给了jdk。今天我们就来探究一下,Java序列化是怎么实现的,然后探讨一下几个常见的集合类,他们是如何处理序列化带来的问题的。 分析过程 几个待思考的问题 为什么序列化一个...

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

Java

图文解析 Nacos 配置中心的实现

9

小丁 发布于 2020-01-19

Nacos 是阿里发起的开源项目,地址: github.com/alibaba/nac… 。 Nacos 主要提供两种服务,一是配置中心,支持配置注册、变更下发、层级管理等,意义是不停机就可以动态刷新服务内部的配置项;二是作为命名服务,提供服务的注册和发现功能,通常用于在 RPC...

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

Java

CAS机制及AtomicInteger源码分析

hellas 发布于 2020-01-19

CAS即 Compare And Swap 对比交换,区别于悲观锁,借助CAS可以实现区别于synchronized独占锁的一种乐观锁,被广泛应用在各大编程语言之中。Java JUC底层大量使用了CAS,可以说 java.util.concurrent 完全是建立在CAS之上的。...

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