标签:CTO

Java

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

2

songhua.gao 发布于 2020-01-20

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

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

Java

Spring(二)核心容器 – 简介 、BeanFactory、ApplicationContext

1

Harries 发布于 2020-01-20

前言 在上篇文章中,和大家一起讨论了 Spring 的整体架构,其大致分为五个模块:核心容器、AOP、Web、Data 数据访问、Test模块。其中核心容器是 Spring 的核心部分,其它模块也都依赖于该容器。这里和就大家一起深入讨论 Spring 的容器,它的作用是什么、怎么...

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

Java

Gradle Transform + ASM 探索

4

hellas 发布于 2020-01-20

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

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

Spring

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

1

puefu.he 发布于 2020-01-19

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

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

Java

Gradle Transform + ASM 探索

4

尖兵 发布于 2020-01-19

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

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

Java

Parallel Stream 的错误实践

1

尖兵 发布于 2020-01-19

一、前言 Java8 Stream 流的出现,极大的简化了业务需求中对集合数据的加工处理操作。虽然好用,但是一旦使用不当,也会带来意想不到的结果,本文记录使用 Parallel Stream 的错误实践。 List<Object> sourceList = ...; ...

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

Java

记一次dubbo连接zookeeper注册中心发生异常的排查经历

4

xubiao.zhuang 发布于 2020-01-19

spring boot集成dubbo项目启动过程中报错,错误信息如下: 2020-01-19 17:42:30.466 ERROR - [main] org.springframework.boot.SpringApplication.reportFailure(822) | A...

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

Spring

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

2

刘莉莉 发布于 2020-01-19

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

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

Spring

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

1

hellas 发布于 2020-01-19

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

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

Spring

SpringSecurity 初始化流程源码

8

zhuangli 发布于 2020-01-19

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

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

Java

List去重问题与方法

2

darida 发布于 2020-01-19

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

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

Java

List去重问题与方法

2

xiaoli.wang 发布于 2020-01-19

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

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

Java

解析Serializable原理

zhuangli 发布于 2020-01-19

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

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

Java

从源码理解Java虚引用

7

尖兵 发布于 2020-01-19

在jdk1.2之后,java对引用的概念进行了扩充。将引用分为了强引用,软引用,弱引用,和虚引用四种。 强引用:即我们平常说的引用,指在程序代码中普遍存在的引用赋值。在垃圾回收中,只要强引用还存在,那么当前对象就永远不会被回收。 软引用:比强引用弱一级的引用关系。在系统将要发生内...

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

Java

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

9

小丁 发布于 2020-01-19

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

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

编程技术

性能调优,程序员转型架构师的拦路虎【2】

4

尖兵 发布于 2020-01-19

性能调优系列前序文章索引: 程序员必须掌握的性能调优 :老兵哥结合个人经历解释了程序员往架构师方向发展时为什么要跨越性能调优这一关,以及介绍了从 X、Y、Z 三个维度优化性能的思路。 从  X  维度优化系统的性能 :老兵哥分享了从 X 维度优化系统性能的思路...

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

Java

ThreadPoolExecutor 的简单梳理

2

dulong 发布于 2020-01-19

还是楼主惯用的论述三连问,先问是什么,再问为什么,最后祭除终极大杀器 just do it …… what ? 那么什么是线程池呢?总的来说,线程池是一种线程使用模式。线程的频繁创建于调度会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可...

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