Java技术栈
内容:
1、Java基础(JavaSE)
2、数据结构与算法与设计模式
3、计算机理论知识
4、数据库
5、Java web(JavaEE)
6、消息队列
7、Linux及服务器相关
8、分布式相关
9、拓展技能
参考:https://blog.csdn.net/ferrari_cal/article/details/79093826
以下整理结合个人实际情况
一、Java基础(JavaSE)
1、Java基础常用
熟悉Java中各种变量类型
熟悉Java String的使用,熟悉String的各种函数
熟悉Java中各种关键字
学会使用Java内置的List,Map,Stack,Queue,Set:
- 上述数据结构的遍历和常用方法
- 上述数据结构的使用场景
Java内置Array/List排序“
- java.util.Arrays.sort()
- java.util.Collections.sort()
Java实现对List去重并且保留数据原始的出现顺序
Java正则表达式:
实现通过正则表达式提取一段文本中的电子邮件,并将@替换为#输出 =》 java.lang.util.regex.*
Java反射与javassist
- 反射与工厂模式
- java.lang.reflect.*
Java序列化:
- java.io. Serializable
- 什么是序列化,为什么序列化
- 序列化与单例模式
2、Java IO相关
- java.io.*
- java.nio.*
- nio和reactor设计模式
- 文件编码,字符集
3、JVM与Java底层知识
- Java内存模型,Java内存管理,Java堆和栈,垃圾回收
- 了解JVM各种参数及调优
- 类加载机制,也就是双亲委派模型
- Java内存分配模型
- 线程共享的:堆区、永久区 线程独享的:虚拟机栈、本地方法栈、程序计数器
- 内存分配机制:年轻代(Eden区、两个Survivor区)、年老代、永久代以及他们的分配过程
- 强引用、软引用、弱引用、虚引用与GC
- Java 8的内存分代改进
- 垃圾回收算法
4、Java并发编程(多线程)
5、Java网络编程(socket)
6、Java泛型编程
7、阅读源码
java.lang.String
java.lang.Integer
java.lang.Long
java.lang.Enum
java.math.BigDecimal
java.lang.ThreadLocal
java.lang.ClassLoader
java.net.URLClassLoader
java.util.ArrayList
java.util.LinkedList
java.util.HashMap
java.util.LinkedHashMap
java.util.TreeMap
java.util.HashSet
java.util.LinkedHashSet
java.util.TreeSet
二、数据结构与算法与设计模式
1、常用数据结构
(1)链表
(2)栈与队列
(3)数组和矩阵
(4)字符串
(5)二叉树
(6)并查集
(7)前缀树
(8)图
2、常用算法
(1)排序算法和查找算法
(2)位运算
(3)递归
(4)动态规划
(5)贪心法
(6)回溯法
(7)分支限界法
3、海量数据问题
(1)布隆过滤器
(2)一致性哈希
4、设计模式
(1)最重要的模式(要求能手写出来)
- 单例模式
- 适配器模式
- 工厂模式
- 观察者模式
- 装饰器模式
- ThreadLocal设计模式
(2)其他模式(了解即可)
- 创建型模式:抽象工厂模式、单例模式、建造者模式、原型模式。
- 结构型模式:代理模式、桥接模式、组合模式、享元模式。
- 行为型模式:策略模式、模板方法模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
- 其实还有两类:并发型模式和线程池模式
4、其他
三、计算机理论知识
1、计算机网络
2、操作系统
3、计算机组成原理
4、编译原理
5、网络安全知识
6、其他理论知识
四、数据库
1、数据库基础理论
2、sql
3、MySQL数据库
4、NoSql数据库mongoDB
5、KV键值系统redis - Memcached
五、Java web(JavaEE)
1、web基础知识
(1)计算机网络体系结构
(2)HTTP协议
(3)web服务器
(4)JavaEE
(5)EJB和JavaBeam
(6)Ioc和AOP
(7)SOAP和REST
(8)ssh和ssm
(9)JDBC API
2、servlet与jsp
3、struts2框架
4、ORM模型 - Hibernate和mybatis
5、spring框架
6、springMVC框架
六、消息队列
1、kafka
2、RocketMQ
3、Notify
4、Hermes
七、Linux及服务器相关
1、Linux常用命令
2、web服务器tomcat、ngnix
3、docker使用
八、分布式相关
九、拓展技能
1、云计算、虚拟化
2、监控、负载均衡
3、使用git
4、使用maven
5、了解编码
6、大数据相关
Java技术栈的更多相关文章
- java技术栈:项目概述
学习使用java到现在也有三年多了,这三年基本是以项目驱动的方式学习,有好有坏,个人觉得好处在于,有一个清晰的目标让你解决,这会让你学习非常迅速有效.当然坏处就是片面,不成体系.这种学习方式在学校以小 ...
- Java技术栈思维导图
Java技术栈思维导图 Java IO流体系 设计模式
- 干货:Java技术栈18年02月精彩好文汇总
一晃眼,一个月过去了,新年也过完了. 一晃眼,又老了一岁了,感觉新的一年压力更大了. 我们也该为这一个月的技术做做汇总了,错过的同学正好可以统一回顾看看,已经看过的同学也可以再温习一下.. Java技 ...
- Java 技术栈中间件优雅停机方案设计与实现全景图
欢迎关注公众号:bin的技术小屋,阅读公众号原文 本系列 Netty 源码解析文章基于 4.1.56.Final 版本 本文概要 在上篇文章 我为 Netty 贡献源码 | 且看 Netty 如何应对 ...
- Java 技术栈
JAVA是一个面向对象的编程语言,由SUN公司的程序员所开发.它不仅吸收了C++的各种优点,而且还撇弃了C++中难以理解的概念,如多继承.指针等:因此JAVA语言具有功能强大且简单易用两个特征, JA ...
- "Oracle要对Java收费了,SAP基于Java技术栈的那些产品的客户怎么办"
今年年初的时候,所谓"Oracle要对Java收费"的新闻,在网上传得沸沸扬扬.这个新闻被专业人士视为标题党,而国内众多技术论坛,比如知乎社区上,有很多大神对"Java收 ...
- java技术栈:一、java编程语言概述
Java是一种编程语言,起源于20世纪90年代初Sun公司的一个叫Green的项目,该项目主要目的是是开发嵌入家用电器的分布式软件系统,从而使电器更加智能化.因为项目小组成员皆为C++的高手(那个年代 ...
- java面试2(java技术栈和Hollis面试内容分享)
1.什么是java虚拟机? java虚拟机(JVM)是一个可执行java字节码的虚拟机进程,java源文件被编译成能被java虚拟机可执行的字节码文件. 2.什么是平台无关性,java是如何做到平台无 ...
- [转载 java 技术栈] eclipse 阅读跟踪 Java 源码的几个小技巧!
本文基于Eclipse IDE,我们每天都使用的IDE其实提供了很多强大的功能,掌握它们,往往能够事半功倍. 1.Quick Type Hierarchy 快速查看类继承体系. 快捷键:Ctrl + ...
随机推荐
- STM32 PWM输出(映射)
STM32 的定时器除了 TIM6 和 7.其他的定时器都可以用来产生 PWM 输出.其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出.而通用定时器也能同时产生多达 4 ...
- hdu1243 dp (类最长公共子序列)
题意:射击演习中,已知敌人出现的种类顺序,以及自己的子弹种类顺序,当同种类的子弹打到同种类的敌人时会得到相应分数,问最多能得多少分. 这题的题意很好理解,而且模型也很常见,是带权值的类最长公共子序列问 ...
- 【WebForm】知识笔记
一.ashx介绍以及ashx文件与aspx文件之间的区别 ashx是什么文件? .ashx 文件用于写web handler的. .ashx文件与.aspx文件类似,可以通过它来调用HttpHandl ...
- LG1955 [NOI2015]程序自动分析
题意 题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量,给定n个形如xi=xj或xi≠x ...
- LG4455 【[CQOI2018]社交网络】
分析 这题我们先转化为图论模型,发现求的其实就是有向图中以1为根的生成树数量.而关于这一问题存在O(3^n * n^2)的算法,一看数据n=250,发现不行.于是需要更高效的算法--Matrix-Tr ...
- LG2731 骑马修栅栏 Riding the Fences
题意 John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏.你必须编一个程序,读入栅栏网络的描述,并计算出一条修栅栏的路径,使每个栅栏都恰好被经过一次.John能从任何一个顶点( ...
- ZH奶酪:【数据结构与算法】基础排序算法总结与Python实现
1.冒泡排序(BubbleSort) 介绍:重复的遍历数列,一次比较两个元素,如果他们顺序错误就进行交换. 2016年1月22日总结: 冒泡排序就是比较相邻的两个元素,保证每次遍历最后的元素最大. 排 ...
- Oracle 基础知识入门
前记: 近来项目用到Oracle数据库,大学学了点,后面基本忘记得差不多了,虽然基本语法跟sql 差不多,但是oracle知识是非常多的. 这里简单说点基础知识,希望后面补上更多的关于ORacle知识 ...
- python安装途中遇到的问题和解决方法
一.setuptools安装错误:RuntimeError: Compression requires the (missing) zlib module 1. 描述 搞了个腾讯云的服务器,闲在手上没 ...
- 使用 Visual Studio Code (VSCODE)写 C51 (持续更新 2018-04-09)
Keil C51 那代码编辑器就是上一个时代的产物, 不适合现代人使用. 但是用 Visual Studio Code (VSCODE)就舒服多了.但需要安装和配置一些扩展: 按 Ctrl + Shi ...