Java教程
javaweb面试总结(二、电商项目),Java校招面试经验
本文主要是介绍javaweb面试总结(二、电商项目),Java校招面试经验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
JAVA基础
JAVA异常分类及处理
异常分类
异常的处理方式
Throw和throws的区别
JAVA反射
动态语言
反射机制概念 (运行状态中知道类所有的属性和方法)
Java反射API
反射使用步骤(获取Class对象、调用对象方法)
获取Class对象的3种方法
创建对象的两种方法
JAVA注解
JAVA内部类
JAVA泛型
JAVA序列化(创建可复用的Java对象)
JAVA复制
JAVA集合
接口继承关系和实现
List
ArrayList(数组)
Vector(数组实现、线程同步)
LinkList(链表)
Set
HashSet(Hash表)
TreeSet(二叉树)
LinkHashSet(HashSet+LinkedHashMap)
Map
HashMap(数组+链表+红黑树)
JAVA7实现
JAVA8实现
ConcurrentHashMap
Segment段
线程安全(Segment 继承 ReentrantLock 加锁)
并行度(默认16)
HashTable(线程安全)
TreeMap(可排序)
LinkHashMap(记录插入顺序)
JAVA多线程并发
JAVA并发知识库
JAVA线程实现/创建方式
4种线程池
线程生命周期(状态)
终止线程4种方式
sleep与wait 区别
start与run区别
JAVA后台线程
JAVA锁
线程基本方法
线程上下文切换
同步锁与死锁
线程池原理
JAVA阻塞队列原理
CyclicBarrier、CountDownLatch、Semaphore的用法
volatile关键字的作用(变量可见性、禁止重排序)
如何在两个线程之间共享数据
ThreadLocal作用(线程本地存储)
synchronized和ReentrantLock的区别
ConcurrentHashMap并发
Java中用到的线程调度
进程调度算法
什么是CAS(比较并交换-乐观锁机制-锁自旋)
什么是 AQS(抽象的队列同步器)
JVM
线程
JVM内存区域
JVM运行时内存
垃圾回收与算法
JAVA 四种引用类型
GC分代收集算法 VS 分区收集算法
GC垃圾收集器
JAVA IO/NIO
JVM 类加载机制
Spring 原理
Spring 特点
轻量级
控制反转
面向切面
容器
框架集合
Spring 核心组件
Spring 常用模块
Spring 主要包
Spring 常用注解
Spring IOC原理
Spring APO原理
Spring MVC原理
Spring Boot原理
JPA原理
Mybatis缓存
Tomcat架构
微服务
服务注册发现
客户端注册(zookeeper)
第三方注册(独立的服务Registrar)
客户端发现
服务端发现
Consul
Eureka
SmartStack
Etcd
API 网关
请求转发
响应合并
协议转换
数据转换
安全认证
配置中心
zookeeper配置中心
配置中心数据分类
事件调度(kafka)
服务跟踪(starter-sleuth)
服务熔断(Hystrix)
Hystrix断路器机制
API管理
Netty 与RPC
Netty 原理
Netty 高性能
多路复用通讯方式
异步通讯NIO
零拷贝(DIRECT BUFFERS使用堆外直接内存)
内存池(基于内存池的缓冲区重用机制)
高效的Reactor线程模型
无锁设计、线程绑定
高性能的序列化框架
Netty RPC实现
关键技术
核心流程
消息编解码
通讯过程
RMI实现方式
实现步骤
Protoclol Buffer
Thrift
分布式缓存
缓存雪崩
缓存穿透
缓存预热
缓存更新
缓存降级
网络
网络7层架构
TCP/IP原理
网络访问层(Network Access Layer)
网络层(Internet Layer)
传输层(Tramsport Layer-TCP/UDP)
应用层(Application Layer)
TCP三次握手/四次挥手
HTTP原理
传输流程
HTTP状态
HTTPS
CDN 原理
分发服务系统
负载均衡系统
管理系统
日志
Slf4j
Log4j
LogBack
Logback优点
ELK
Zookeeper
Zookeeper概念
Zookeeper角色
Leader
Follower
Observer
ZAB协议
事务编号 Zxid(事务请求计数器+ epoch)
epoch
Zab协议有两种模式-恢复模式(选主)、广播模式(同步)
ZAB协议4阶段
Leader election(选举阶段-选出准Leader)
ZAB协议JAVA实现(FLE-发现阶段和同步合并为 Recovery Phase(恢复阶段))
投票机制
Zookeeper工作原理(原子广播)
Znode有四种形式的目录节点
Kafka
Kafka概念
Kafka数据存储设计
partition的数据文件(offset,MessageSize,data)
数据文件分段segment(顺序读写、分段命令、二分查找)
数据文件索引(分段索引、稀疏存储)
生产者设计
负载均衡(partition会均衡分布到不同broker上)
批量发送
压缩(GZIP或Snappy)
消费者设计
Consumer Group
RabbitMQ
RabbitMQ概念
RabbitMQ架构
Exchange 类型
Hbase
Hbase概念
列式存储
Hbase核心概念
Hbase核心架构
Hbase的写逻辑
HBase vs Cassandra
MongoDB
MongoDB概念
MongoDB特点
Cassandra
Cassandra概念
数据模型
Cassandra一致Hash和虚拟节点
Gossip协议
数据复制
数据写请求和协调者
数据读请求和后台修复
数据存储(CommitLog、MemTable、SSTable)
二级索引(对要索引的value摘要,生成RowKey)
数据读写
设计模式
设计原则
工厂方法模式
抽象工厂模式
单例模式
建造者模式
原型模式
适配器模式
装饰器模式
代理模式
外观模式
桥接模式
组合模式
享元模式
策略模式
模板方法模式
观察者模式
迭代的模式
责任链模式
命令模式
备忘录模式
负载均衡
四层负载均衡 vs 七层负载均衡
负载均衡算法/策略
LVS
Keepalive
Nginx反向代理负载均衡
HAProxy
数据库
存储引擎
索引
数据库三范式
数据库是事务
存储过程(特定功能的SQL 语句集)
触发器(一段能自动执行的程序)
数据库并发策略
数据库锁
基于Redis分布式锁
分区分表
两阶段提交协议
三阶段提交协议
柔性事务
CAP
一致性算法
Paxos
Zab
Raft
NWR
Gossip
一致性Hash
一致性Hash特性
一致性Hash原理
JAVA算法
二分查找
冒泡排序算法
插入排序算法
快速排序算法
希尔排序算法
归并排序算法
桶排序算法
基数排序算法
剪枝算法
回溯算法
最短路径算法
最大的数组算法
最长公共子序算法
最小生成树算法
数据结构
栈(stack)
队列(queue)
链表(Link)
散列表(Hash Table)
排序二叉树
红黑树
B-TREE
位图
加密算法
AES
RSA
CRC
MD5
Hadoop
Hadoop概念
HDFS
Client
NameNode
Secondary NameNode
DataNode
MapReduce
JobTracker
TaskTracker
Task
Reduce Task 执行过程
Hadoop MapReduce 作业的生命周期
作业提交与初始化
任务调度与监控。
任务运行环境准备
任务执行
作业完成
Spark
Spark概念
核心架构
核心组件
SPARK编程模型
SPARK计算模型
SPARK运行流程
SPARK RDD流程
SPARK RDD
Storm
Storm概念
集群架构
Nimbus(master-代码分发给Supervisor)
Supervisor(slave-管理Worker进程的启动和终止)
Worker(具体处理组件逻辑的进程)
Task
ZooKeeper
编程模型(spout->tuple->bolt)
opology运行
Storm Streaming Grouping
ResourceManager
NodeManager
ApplicationMaster
YARN运行流程
机器学习
决策树
随机森林算法
逻辑回归
SVM
朴素贝叶斯
K 最近邻算法
K 均值算法
Adaboost 算法
神经网络
马尔可夫
云计算
SaaS
PaaS
IaaS
Docker
Openstack
Namespaces
进程(CLONE_NEWPID 实现的进程隔离)
Libnetwork与网络隔离
资源隔离与CGroups
镜像与UnionFS
存储驱动
线程、数据库、算法、JVM、分布式、微服务、框架、Spring相关知识
一线互联网P7面试集锦+各种大厂面试集锦
学习笔记以及面试真题解析
本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录
这篇关于javaweb面试总结(二、电商项目),Java校招面试经验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
您可能喜欢
Springboot应用的多环境打包入门
11-23
Springboot应用的生产发布入门教程
11-23
Python编程入门指南
11-23
Java创业入门:从零开始的编程之旅
11-23
Java创业入门:新手必读的Java编程与创业指南
11-23
Java对接阿里云智能语音服务入门详解
11-23
Java对接阿里云智能语音服务入门教程
11-23
JAVA对接阿里云智能语音服务入门教程
11-23
Java副业入门:初学者的简单教程
11-23
JAVA副业入门:初学者的实战指南
11-23
JAVA项目部署入门:新手必读指南
11-23
Java项目部署入门:新手必看指南
11-23
Java项目部署入门:新手必读指南
11-23
Java项目开发入门:新手必读指南
11-23
JAVA项目开发入门:从零开始的实用教程
11-23
栏目导航
前端开发
HTML5教程
CSS教程
Javascript
jQuery教程
AJAX教程
Node.js教程
XML教程
正则表达式
后端开发
Go教程
C/C++教程
消息队列MQ
Net Core教程
Asp.net教程
Java教程
PHP教程
移动端开发
微信公众号开发
小程序开发
Swift教程
IOS教程
Kotlin教程
Android开发
数据库
Redis教程
MongoDB教程
PostgreSQL教程
Oracle教程
MariaDB教程
SqLite教程
MySql教程
SqlServer教程
服务器运维
Kubernetes
Docker容器
linux shell
Nginx教程
网站安全
PowerShell教程
Linux教程
人工智能
TensorFlow教程
Python教程
机器学习
人工智能学习
区块链
区块链技术
游戏开发
游戏编程
Unity3D教程
网站运营
网站策划
网站优化
建站知识
大数据/云计算
云计算
Hadoop教程
软件工程
软件/开发工具使用
Git教程
资讯