关键词不能为空

位置:爱淘啦励志网 > 名人名言 > 学习大全-Java工程师2019高级设计师最完整的学习大全,带学习地图

学习大全-Java工程师2019高级设计师最完整的学习大全,带学习地图

作者:车型网
日期:2020-01-23 10:13:41
阅读:

一、基础篇

JVM

JVM存储器结构

堆栈、堆栈、方法区域、直接内存、堆栈和堆栈之间的差异

Java内存模型

内存可见性、排序、顺序一致性、volatile、锁定、final

回收垃圾

存储器分配策略、垃圾收集器( G1 )、GC算法、GC参数、对象生存判定

JVM参数和调整

Java对象模型

oop-klass,对象磁头

HotSpot市

即时编译器,优化编译

类装载机构

类加载器、类加载过程、父代委托(破坏父代委托)、模块( jboss modules、osgi、jigsaw )

虚拟机性能监控和故障处理工具

jps,jstack,jmap,jstat,jconsole,jinfo,jat,javap,btrace,TProfiler

编译和反编译

javac,javap,jad,CRF

Java基础知识

阅读源代码

字符串、Integer、Long、Enum、BigDecimal、ThreadLocal、ClassLoader & URLClassLoader、ArrayList & LinkedList、hashmap & linked hashmap & treemap & gt

Java的各种变量类型

熟悉Java String的使用,熟悉String的函数

JDK 6和JDK 7中substring的原理不同之处在于,

replaceFirst、replaceAll和replace之间的区别在于,

String对" + "的重负荷,

String.valueOf和Integer.toString之间的区别在于,

字符串偏差

自动拆装盒

Integer缓存机制

熟悉Java的各种关键词

transient、instanceof、volatile、synchronized、final、static和const的原理和用法。

集合类

使用常用的收藏类

ArrayList、LinkedList和Vector之间的区别

同步列表与Vector之间的区别

HashMap、HashTable和ConcurrentHashMap之间的区别

Java 8中与stream相关的使用方法

使用apache集合处理工具类

HashMap在不同版本JDK中的实现差异及原因

列举

枚举用法,枚举和单个实例,Enum类

Java IO&Java NIO,掌握使用方法

bIO、nio和aio的区别、三个io的使用方法和原理、netty

Java反射和javassist

反射和工厂模式,java.lang.reflect.*

Java序列化

序列化和反序列化,为什么要序列化?

序列化基础原理

序列化和单实例模式

prototbuf

为什么序列化不安全?

注释

元注释、自定义注释、使用Java中常用的注释、注释和反射的组合

JMS

什么是Java消息传递服务和JMS消息传递模型

JMX公司

java.lang.management.*,javax.management.*

通用型

通用性和继承性

类型清除

通用中K T V E

object等的意思、通用的使用方法

单元测试

junit、mock、mockito、内存数据库( h2 )

正则表达式

java.lang.util.regex.*

典型的Java工具库

commons.lang,commons.*...guava-librariesnetty

什么是API&SPI

异常

正确处理异常类型、异常、自定义异常

时间处理

时区,季节,Java中间时间API

编码方式

解决乱码问题的常用编码方法

语法糖

Java中语法糖的原理、解语法糖

Java并发编程

线程与进程之间的区别

阅读源代码,学会使用

Thread,Runnable,Callable,ReentrantLock,ReentrantReadWriteLock,Atomic*,Semaphore,CountDownLatch,,ConcurrentHashMap,Executors

线程池

独立设计线程池、submit ( )和execute ( )

线程安全

死锁、死锁故障排除、Java线程计划、线程安全与内存型号之间的关系

CAS、乐观和悲观锁定、数据库相关锁定机制、分布式锁定、偏转锁定、轻量锁定、重量锁定、监视器、锁定优化、解锁、锁定粗糙化、旋转锁定、可重新锁定、阻塞锁定、死锁定

死锁

volatile

处理前、编译器指令的重新配置、CPU指令的重新配置

已同步化

synchronized是如何实现的?

同步与锁定的关系

不使用synchronized实现线程安全性的示例

sleep和wait

wait和notify

通告和通告全部

地理位置

写死锁的程序

编写解决生产者消费者问题的代码

守护进程线程

守护进程线程和非守护进程线程的区别和使用方法

二、进阶篇

Java基础知识

字节代码,类文件格式

CPU缓存、L1、L2、L3和虚拟共享

递归递归

位运算

通过位运算实现加法、减法、乘法、除法、馀数

设计模式

理解23种设计模式

将使用一般的设计模式

单例、战略、工厂、适配器、责任链。

实现AOP

实现IOC

不使用synchronized和lock实现线程安全的单实例模式

nio和reactor设计模式

网络程序设计

一般协议,如tcp、udp、http和https

3次握手和4次关闭、流量控制和拥塞控制、OSI层模型、tcp包和开箱

http/1.0 http/1.1 http/2之前的差异

Java RMI,套接字,http客户端

cookie和session

如何禁用cookie并实现会话

在Java中创建简单静态文件的HTTP服务器

满足“打开/关闭原则”,以实现客户端高速缓存功能,支持返回304,并实现上述功能,该功能支持使用线程池处理客户端请求并使用nio处理客户端请求的简单重写规则,该线程池可以同时下载文件

用Java实现FTP、SMTP协议

进程间通信的方式

什么是CDN? 如果实现了呢?

什么是DNS?

反向代理服务器

框架知识

servlet线程安全问题

servlet过滤器和监听器

Hibernate缓存机制

Hiberate懒惰之路

初始化Spring Bean

Spring的AOP原理

实现Spring的IOC

Spring MVC

Spring Boot2.0

Spring Boot的starter原理是自己实现starter

Spring Security

应用程序服务器

JBoss

tomcat

jetty

Weblogic

工具

git & svn

maven & gradle

三、高级篇

新技术

Java 8

lambda表达式、流API、

Java 9战斗机

Jigsaw、j shell、Reactive Streams

Java 10

局部变量型估计,G1的并行Full GC,ThreadLocal握手机构

Spring 5

响应编程

Spring Boot 2.0

优化性能

使用单个案例、使用Future模式、使用线程池、选择就绪、减少上下文交换机、减少锁定粒度、数据压缩、结果缓存

网络问题分析

取得dump

线程Dump、存储器Dump、gc时

dump分析

死锁分析,内存泄漏分析

自己编写各种outofmemory、stackoverflow程序

记忆体开启,记忆体开启,记忆体开启,记忆体开启,记忆体停止,记忆体开启,直接记忆体开启,记忆体停止

常见问题解决的思考

内存溢出、线程死锁和类加载违规

试着用工具解决下面的问题,写个总结吧

如何在Java程序响应较慢时确定问题,

如何在Java程序频繁完整GC时解决问题?

如何查看垃圾回收日志?

如果Java应用程序出现OutOfMemory,则为、

是否发生死锁,

判断有无内存泄漏的方法

编译原理知识

编译和反编译

编译和反编译Java代码

Java的反编译工具

词法分析,语法分析( LL算法,递归降算法,LR算法),语义分析,运行时环境,中间代码,代码生成,代码优化

操作系统知识

Linux常用命令

同步进程

缓冲区溢出

分隔符和分页符

虚拟内存和主内存

数据库知识

MySql执行引擎

MySQL执行计划

如何查看解释计划并根据解释计划优化SQL

SQL调整

事务

事务隔离级别,事务能否实现锁定的功能

数据库锁定

使用行锁、表锁和数据库锁的乐观锁、

构建数据库主数据库

冰箱log

内存数据库

h2

常用nosql数据库

redis,memcached

分别使用数据库锁和NoSql实现分布式锁

性能优良

数据结构和算法知识

简单的数据结构

堆栈、队列、链表、数组、散列表、

二叉树、辞典树、平衡树、排序树、b树、B+树、r树、多重树、红黑树

排序算法

各种排序算法和时间复杂度的深度优先和广度优先检索全排列、贪婪算法、KMP算法、hash算法、大量数据处理

大数据知识

Zookeeper

基本概念,一般用法

Solr,Lucene,elastic搜索

在linux上放置solr、solrcloud,添加、删除或查询索引

关于Storm、串流、Spark和S4

在linux上放置storm,在zookeeper中进行调整,并运行storm hello world、local和remote模式来调试storm topology。

Hadoop,离线计算

HDFS,MapReduce

分布式日志收集flume、kafka、logstash

数据挖掘,mahout

网络安全知识

什么是XSS

XSS防御

什么是CSRF

什么是注入攻击

SQL注入、XML注入、CRLF注入

什么是文件上传大厅

加密和解密

MD5,SHA1,DES,AES,RSA,DSA

什么是DOS攻击和DDOS攻击

memcached为什么会引起DDos攻击,反射型DDos是什么

SSL,TLS,HTTPS

基于Hash冲突的DOS攻击方法

将openssl签署的证书部署到apache或nginx

四、框架篇

分布式

数据完整性、服务管理和服务降级

分布式事务处理

2PC、3PC、CAP、BASE、信任信件的最终完整性、最大努力通知、TCC

Dubbo

服务注册、服务发现和服务管理

分布式数据库

如何构建分布式数据库,何时需要分布式数据库,mycat、otter、HBase

分布式文件系统

mfs、fastdfs

分布式高速缓存

缓存一致性、缓存命中率和缓存冗馀

微型服务

SOA,康威定律

ServiceMesh

Docker & Kubernets

Spring Boot

spring云

高同时性

分析表

CDN技术

消息队列

activeemq

监视

监视什么?

CPU、存储器、磁盘I/O、网络I/O等

监视单元

过程监视、语义监视、机械资源监视、数据变动

监视数据收集

日志,嵌入点

Dapper

负载平衡

tomcat负载平衡、Nginx负载平衡

DNS

DNS原理,DNS的设计

CDN公司

数据完整性

五、扩张篇

云计算技术

IaaS、SaaS、PaaS、虚拟化技术、openstack、Serverlsess

搜索引擎

Solr、Lucene、Nutch和elastic搜索

权限管理

夏洛

块链条

哈希算法、Merkle树、公钥加密算法、协议算法、Raft协议、Paxos和Raft算法、签证问题和算法、消息认证码和数字签名

比特币

开采、协议机制、闪电网络、侧链、热点问题、分支

以太网坊

超级帐目

人工智能

数学基础,机器学习,人工神经网络,深度学习,应用场景。

一般框架

TensorFlow,DeepLearning4J

其他语言

Groovy、Python、Go、NodeJs、Swift、Rust

上诉中提到的技术知识点小编已经整理了Ximd形式的图像,同时小编也特意收集了关于这些技术知识点的学习资料,如果有想要得到的朋友,我可以在后台免费分享“框架资料”。

爱淘啦励志网相关推荐