引子

本篇文章用技术树的形式来展示java相关技术栈。所有技术点有博客的都自带链接,没有的后续加上。

必读书籍推荐:

1.java基础:

《effective java》--》四星推荐,工具书,时长翻看一下规避坑。

2.jvm:

《深入理解java虚拟机》--》超五星推荐,建议看上多遍。深入浅出,楼主到现在依然不敢说完全吃透这本书。涵盖:java历史+内存管理+虚拟机执行+程序编译优化+并发。

3.数据库

《Mysql技术内幕-InnoDB存储引擎》--》超五星推荐,建议看多遍。由于讲的比较深且抽象,后端研发可以有选择的看。从现在主流innoDB引擎入手,深入讲解mysql.

4.设计模式

《设计模式的艺术-软件开发人员内功修炼之道》--》四星级推荐。

5.算法

《算法第四版》--》五星推荐,全部java实现算法,讲解透彻。

6.并发

7.区块链

8.开源框架

《Spring Cloud 微服务实战》--》四星推荐,作为spring cloud工具书还是不错。

1.java基础

1.1 入门篇

OpenJDK-Hotspot源码包目录结构

Java异常简介、异常捕获还是上抛总结

1.2 java集合

list、set、map集合总览

ConcurrentHashMap原理分析

JDK1.7升级1.8 HashMap原理的变化

Vector集合详解

2.jvm和调优

JDK8-废弃永久代(PermGen)迎来元空间(Metaspace)

Eclipse Memory Analyzer,内存泄漏插件,安装使用一条龙

3.线程

3.1 线程

Thread类源码剖析

从Thread.start()方法看Thread源码,多次start一个线程会怎么样

ThreadLocal终极源码剖析-一篇足矣!

3.2 多线程

3.2.1 锁

《The java.util.concurrent Synchronizer Framework》 JUC同步器框架(AQS框架)原文翻译

AbstractQueuedSynchronizer AQS框架源码剖析

Java的LockSupport.park()实现分析

终极锁实战:单JVM锁+分布式锁

对象内存布局、synchronized终极原理

同步中的四种锁synchronized、ReentrantLock、ReentrantReadWriteLock、StampedLock

锁Synchronized

zookeeper分布式锁

3.2.2 多线程任务

常用线程池和调度类

根据CPU核心数确定线程池并发线程数

多线程并发执行任务,取结果归集。终极总结:Future、FutureTask、CompletionService、CompletableFuture

多线程经常使用的3个关键字:synchronized、ReentrantLock、volatile

4.算法

6种基础排序算法java源码+图文解析

底层算法系列:Paxos算法

Raft算法

5.开源框架

5.1 Spring 框架

异步任务spring @Async注解源码解析

5.2 Spring IOC容器启动详解

Spring IOC(一)概览

Spring IOC(二)容器初始化

Spring IOC(三)依赖注入

Spring IOC(四)总结

5.3 Spring Kafka原理详解

kafka原理和实践(一)原理:10分钟入门

kafka原理和实践(二)spring-kafka简单实践

kafka原理和实践(三)spring-kafka生产者源码

kafka原理和实践(四)spring-kafka消费者源码

kafka原理和实践(五)spring-kafka配置详解

kafka原理和实践(六)总结升华

5.4 Spring Cloud(boot)

spring boot容器启动详解

spring cloud feign不支持@RequestBody+ RequestMethod.GET,报错

@RequestBody对象为空,异常Required request body is missing

5.5 zookeeper

zookeeper(zkCli)命令概览

5.6 dubbo

6.设计模式

观察者模式

设计模式之大成--配真实工作中的案例源码

7.数据库/缓存

7.1 mysql

mysql事务隔离级别和MVCC

PowerDesigner连接mysql逆向生成pdm

mysql按照天统计报表,当天没有数据,填0

日志监控系统中,大批量查询mysql方案

7.2 cache

基于Redis的爬虫平台的实现

google cache源码详解

8.工具

9.linux

 

java技术树+必读书籍的更多相关文章

  1. 10本Java架构师必读书籍

    1.大型网站系统与JAVA中间件实践 本书围绕大型网站和支撑大型网站架构的Java中间件的实践展开介绍. 从分布式系统的知识切入,让读者对分布式系统有基本的了解:然后介绍大型网站随着数据量.访问量增长 ...

  2. 9本java程序员必读的书(附下载地址)

    本文列出的9本书在Java程序员界都是被认为很棒的书.当一个程序员开始初学Java时,他的第一个问题应该是如何选择一本书来作为指导学习Java.这个问题也就表明,相对于其他的教程和博客,Java书籍还 ...

  3. Java 专业人士必备的书籍和网站列表

    对于 Java™ 语言开发人员来说,信息过量是一个真正的问题.每个新入行的程序员都要面临一个令人畏缩的挑战:要进入的行业是一个具有海量知识的行业.要了解的东西简直 太多了.对于有经验的老手来说,情况只 ...

  4. 9本java程序员必读的书

    来源:http://mp.weixin.qq.com/s?__biz=MjM5NzA1MTcyMA==&mid=202904638&idx=2&sn=21dd20438e32a ...

  5. Java 技术栈

    JAVA是一个面向对象的编程语言,由SUN公司的程序员所开发.它不仅吸收了C++的各种优点,而且还撇弃了C++中难以理解的概念,如多继承.指针等:因此JAVA语言具有功能强大且简单易用两个特征, JA ...

  6. java技术面试之面试题大全

    转载自:http://blog.csdn.net/lijizhi19950123/article/details/77679489 Java 面试知识点总结 本篇文章会对面试中常遇到的Java技术点进 ...

  7. Java程序员必读的9本书

    本文列出的9本书在Java程序员界都是被认为很棒的书.当一个程序员开始初学Java时,他的第一个问题应该是如何选择一本书来作为指导学习Java.这个问题也就表明,相对于其他的教程和博客,Java书籍还 ...

  8. (转)如何学习Java技术?谈Java学习之路

    51CTO编者注:这篇文章已经是有数年“网龄”的老文,不过在今天看来仍然经典.如何学习Java?本篇文章可以说也是面对编程初学者的一篇指导文章,其中对于如何学习Java的步骤的介绍,很多也适用于开发领 ...

  9. web技术人员-推荐书籍

    学习是技术人员成长的基础,本次分享20本技术方面的书籍,这些书不是每一本都是经典,但是每一本都有其特点.以下20本大部分本人都看过,因此推荐给大家.(本次推荐的20本只是一个参考,比如像Head Fi ...

随机推荐

  1. form表单提交转为可被 getModel(PROJECT.class ,null);接收

    var form = new mini.Form("#editForm"+id); form.validate();if (!form.isValid()) { alert('信息 ...

  2. java设计原则---开闭原则

    开闭原则:指的是一个软件实体应对对扩展开发,对修改关闭(Software entities should be open for extension, but closed for modificat ...

  3. 【python进阶】深入理解系统进程2

    前言 在上一篇[python进阶]深入理解系统进程1中,我们讲述了多任务的一些概念,多进程的创建,fork等一些问题,这一节我们继续接着讲述系统进程的一些方法及注意点 multiprocessing ...

  4. Flux和ExtJS MVC框架的异同点介绍

    Flux是Facebook在现有MVC框架数据流动复杂,难以设计和维护大型的前端应用的情况下设计的一种新的数据架构协议.叫做协议是因为Flux本身就像MVC一样,规定了一种机制,但是Facebook提 ...

  5. 类设计:设计卖车的4S店

    class Car(object): # 定义车的方法 def move(self): print('---车在移动---') def stop(self): print('---停车---') # ...

  6. 学生管理系统_排序后通过name删除列表里的字典

    l = [{'name': 'wangfan', 'age': 18, 'sex': 'nan'}, {'name': 'wangerfan', 'age': 10, 'sex': 'nan'}, { ...

  7. Python 内置的一些高效率函数用法

    1.  filter(function,sequence) 将sequence中的每个元素,依次传进function函数(可以自定义,返回的结果是True或者False)筛选,返回符合条件的元素,重组 ...

  8. django优化和扩展(一)

    mysql优化基础 进行django产品开发或上线之前,有必要了解一下mysql的基础知识,orm太过抽象,导致很多朋友对于mysql了解得太少,而且orm不像sqlalchemy那样可以跟mysql ...

  9. python!!!!惊了,这世上居然还有这么神奇的东西存在

    第一次接触到python的时候实在看学习3Blue1Brown的视频线性代数的本质的时候.惊奇的是里面的视频操作,例如向量的变化,线性变换等都是由python用代码打出来的.那时的我只是以为pytho ...

  10. spring cloud中利用sidecar整合异构语言(转)

    用spring cloud sidecar的整合异构语言,以前做过没有做笔记,现在再做由于各种坑又浪费了一天,这里记一下 首先是官网:http://cloud.spring.io/spring-clo ...