一般的程序员或许只需知道一些JAVA的语法结构,能对数据库数据进行CRUD就可以应付了。但要成为JAVA(高级) 工程师,就要对JAVA做比较深入的研究,需要不断学习进步,以下对高级工程师需要突破的知识点做个简要整理。

Java高级工程师需要弄明白的20个知识点

  • 1、对多线程的了解,尤其是对线程池的理解,对ThreadPoolExecutor构造参数各个作用的理解、了解Fxied Pool、Cached Pool分别的作用
  • 2、对锁的了解,synchronized、Lock接口(及其对应的实现的理解)
  • 3、对JDK中HaskMap、ArrayList的源代码级别理解;对并发包中ConcurrentHashMap源代码级别的理解(可以基于JDK8、在了解JDK7)
  • 4、熟练使用Mybais、Spring框架
  • 5、对Spring Bean生命周期的理解、Spring 事务管理的理解(主要关注隔离性、事务的几种传播方式)
  • 6、对Spring AOP能够用于哪些场景、实现AOP的核心技术是什么(JDK Proxy、cglib包)
  • 7、对Tomcat的架构有所理解(底层通讯框架是什么:NIO、如何做到隔离:自定义的classloader)
  • 8、对分布式理论的了解(CAP、BASE等)
  • 9、对分布式锁理论的了解,及其哪些方式可以实现、如何实现(Redis、Zookeeper)
  • 10、对分布式事务理论的了解(2PC、3PC、TCC),及其哪些方式可以实现、如何实现(MQ等)
  • 11、对Redis的理解以及应用(分布式应该如何配置)有多少种的数据结构、持久化是如何设计
  • 12、对Zookeeper的理解以及应用(选主过程ZAB协议,几种节点Leader、Follewer、Observer,4种节点:持久、持久有序、临时、临时有序)
  • 13、基本的设计模式:工厂、单例、表驱动法、模板等
  • 14、线程的几大状态,以及状态变化
  • 15、数据库大数据如何优化(几千万,几亿级的)
  • 16、如何做分布式事务锁?
  • 17、dubbo、Sping Boot、Sping cloud等分布式框架各有什么特点,选型的依据是什么?
  • 18、介绍下zeekeeper如何领导者决策过程
  • 19、Java基础技术体系、JVM内存分配、垃圾回收、类装载机制、性能优化、反射机制、网络编程、常用数据结构和相关算法
  • 20、常见的一些解决方案及其原理:单点登录、分布式缓存、SOA、全文检索、消息中间件,负载均衡、连接池、流计算等

Java高级工程师需要弄明白的20个知识点的更多相关文章

  1. 弄明白CMS和G1,就靠这一篇了

    目录 1 CMS收集器 安全点(Safepoint) 安全区域 2 G1收集器 卡表(Card Table) 3 总结 4 参考 在开始介绍CMS和G1前,我们可以剧透几点: 根据不同分代的特点,收集 ...

  2. Java高级工程师面试宝典

    Java高级工程师面试宝典 JavaSE 多线程 进程与线程的区别? 答:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径. 为什么要用多线程? 答:提高程序效率 多线程创 ...

  3. 几张图弄明白ios布局中的尺寸问题

    背景 先说说逆向那事.各种曲折..各种技术过时,老老实实在啃看雪的帖子..更新会有的. 回正题,这里讨论的是在Masnory框架下的布局问题.像我这种游击队没师傅带,什么都得自己琢磨,一直没闹明白下面 ...

  4. Install Oracle Java JDK/JRE 7u55 on Fedora 20/19, CentOS/RHEL 6.5/5.10

    What’s new in Sun/Oracle Java 7 VM Compressed 64-bit object pointers Garbage-First GC (G1) JSR 292: ...

  5. java高级工程师必备知识

    成为Java高级工程师需要掌握哪些核心点? 每 逢长假都会有很多程序员跳槽,十一.过年是跳槽黄金时刻,尤其是过年.过年的时候年终奖到手,没有了多少牵挂,年终同学同事聚会比较多,沟通的就多,各种 工作机 ...

  6. java开发者最常去的20个英文网站

    java开发者最常去的20个英文网站: 1.[http://www.javaalmanac.com] Java开发者年鉴一书的在线版本. 要想快速查到某种Java技巧的用法及示例代码, 这是一个不错的 ...

  7. 想成为Java高级工程师的看过来

    想成为Java高级工程师,有哪些要求呢? 1.Core Java,就是Java基础.JDK的类库,很多童鞋都会说,JDK我懂,但是懂还不足够,知其然还要知其所以然,JDK的源代码写的非常好,要经常查看 ...

  8. js基础--javaScript数据类型你都弄明白了吗?绝对干货

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...

  9. java高级工程师开放面试题集<二>

    临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java ...

随机推荐

  1. 配置文件springmvc.xml

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  2. 计算机中的K、M、G、T到底指的是

    计算机语言是二进制数字01组成. 在计算机工作中,2的10次方用K(kilo)表示,2的20次方用M(mega)表示,2的30次方用G(giga)表示,2的40次方用T(tera)表示.因此,4K=2 ...

  3. SpringMvc 启动原理源码分析

    了解一个项目启动如何实现是了解一个框架底层实现的一个必不可少的环节.从使用步骤来看,我们一般是引入包之后,配置web.xml文件.官方文档示例的配置如下: <web-app> <se ...

  4. SQL 将一列多行数据合并为一行

    原表数据: 期望结果: 使用STUFF + FOR XML PATH即可实现以上效果 执行以下SQL: , , '') AS Course FROM Student AS T 可以看到输出结果与期望结 ...

  5. python3模块: requests

    Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. 发送G ...

  6. 阿里语音识别(语音转文字)java调用全程手把手详解-适合中小学生快速上手

    阿里语音识别服务java调用全程手把手详解-适合中小学生快速上手 阿里语音识别与百度语音识别的调用对比: 用例:1分30秒的录音文件    百度用时:3秒    阿里用时:30秒    识别准确率来看 ...

  7. 深入理解Spring的异步机制

    一.Spring中实现异步执行 在这里我先以事件的机制举例,注意默认情况下事件的发布与监听都是同步执行的.那么我们来看一看基于异步事件的例子该怎么写 首先还是定义事件: package com.bdq ...

  8. Intellij IDEA 环境配置与使用

    Intellij IDEA 是我感觉最牛X的IDE开发工具,没有之一! 先share一篇教程: http://pan.baidu.com/s/1i3fzJff 调整字体 设置默认的JDK 显示行号 版 ...

  9. ThreadPoolExecutor策略配置以及应用场景

    ThreadPoolExecutor 是用来处理异步任务的一个接口,可以将其理解成为一个线程池和一个任务队列,提交到 ExecutorService 对象的任务会被放入任务队或者直接被线程池中的线程执 ...

  10. 15 图-图的遍历-基于邻接矩阵实现的BFS与DFS算法

    算法分析和具体步骤解说直接写在代码注释上了 TvT 没时间了等下还要去洗衣服 就先不赘述了 有不明白的欢迎留言交流!(估计是没人看的了) 直接上代码: #include<stdio.h> ...