字节码class文件格式CAFEBABE位运算用位运算实现加、减、乘、除、取余设计模式设计模式的六大原则开闭原则里氏代换原则依赖倒转原则接口隔离原则迪米特法则(最少知道原则)合成复用原则创建型设计模式单例模式抽象工厂模式建造者模式工厂模式原型模式结构型设计模式适配器模式桥接模式装饰模式组合模式外观模式享元模式代理模式行为型设计模式模板方法模式命令模式迭代器模式观察者模式中介者模式备忘录模式解释器模式状态模式策略模式责任链模式访问者模式单例的七种写法懒汉—线程不安全懒汉—线程安全饿汉饿汉—变种静态内部类枚举双重校验锁为什么推荐使用枚举实现单例?三种工厂模式的区别及联系简单工厂模板工厂会使用常用的设计模式适配器模式策略模式模板方法模式观察者模式外观模式代理模式不用synchronized和lock,实现线程安全的单例模式nio和reactor设计模式Spring中用的了哪些设计模式网络编程知识常用协议tcpudphttphttps用Java实现FTP、SMTP协议OSI七层模型每一层的主要协议TCP/UDP三次握手与四次关闭流量控制和拥塞控制tcp粘包与拆包TCP/IPIPV4IPV6HTTPhttp/1.0 http/1.1 http/2之间的区别http和https的区别http中get和post区别常见的web请求返回的状态码404、302、301、500分别代表什么用Java写一个简单的静态文件的HTTP服务器http/2Java RMI,Socket,HttpClientcookie与sessioncookie被禁用,如何实现session了解nginx和apache服务器的特性并搭建一个对应的服务器进程间通讯的方式什么是CDN?如何实现?DNS什么是DNS记录类型A记录CNAME记录AAAA记录等域名解析根域名服务器DNS污染DNS劫持公共DNS114 DNSGoogle DNSOpenDNS代理反向代理正向代理反向代理服务器框架知识Servlet生命周期线程安全问题filter和listenerweb.xml中常用配置及作用Hibernate什么是OR MappingHibernate的缓存机制Hibernate的懒加载Hibernate/Ibatis/MyBatis之间的区别MyBatisMyBatis缓存机制‘#{}’和’${}’的区别mapper中传递多个参数Mybatis的延迟加载SpringBean的初始化AOP原理实现Spring的IOCSpring四种依赖注入方式Spring MVC什么是MVCSpring MVC与struts MVC的区别Spring BootSpring Boot 2.0起步依赖自动配置Spring Boot的starter原理自己实现一个starter为什么Spring Boot可以通过main启动web项目Spring SecuritySpring Cloud服务发现与注册EurekaZookeeperConsul负债均衡Spring Cloud Loadbalance服务配置Spring Cloud Config服务限流与熔断Hystrix服务链路追踪Dapper服务网关、安全、消息应用服务器知识JBossTomcatJettyWeblogic工具git & SVNmaven & gradlegit技巧分支合并冲突解决提交回滚maven技巧依赖树依赖仲裁Intellij IDEA常用插件Maven HelperFindBugs-IDEA阿里巴巴代码规约检测GsonFormatLombok plugin.ignoreMybatis pluginJava底层知识 字节码 class文件格式 CAFEBABE 位运算 用位运算实现加、减、乘、除、取余 设计模式 设计模式的六大原则 开闭原则 里氏代换原则 依赖倒转原则 接口隔离原则 迪米特法则(最少知道原则) 合成复用原则 创建型设计模式 单例模式 抽象工厂模式 建造者模式 工厂模式 原型模式 结构型设计模式 适配器模式 桥接模式 装饰模式 组合模式 外观模式 享元模式 代理模式 行为型设计模式 模板方法模式 命令模式 迭代器模式 观察者模式 中介者模式 备忘录模式 解释器模式 状态模式 策略模式 责任链模式 访问者模式 单例的七种写法 懒汉—线程不安全 懒汉—线程安全 饿汉 饿汉—变种 静态内部类 枚举 双重校验锁 为什么推荐使用枚举实现单例? 三种工厂模式的区别及联系 简单工厂 模板工厂 会使用常用的设计模式 适配器模式 策略模式 模板方法模式 观察者模式 外观模式 代理模式 不用synchronized和lock,实现线程安全的单例模式 nio和reactor设计模式 Spring中用的了哪些设计模式 网络编程知识 常用协议 tcp udp http https 用Java实现FTP、SMTP协议 OSI七层模型 每一层的主要协议 TCP/UDP 三次握手与四次关闭 流量控制和拥塞控制 tcp粘包与拆包 TCP/IP IPV4 IPV6 HTTP http/1.0 http/1.1 http/2之间的区别 http和https的区别 http中get和post区别 常见的web请求返回的状态码 404、302、301、500分别代表什么 用Java写一个简单的静态文件的HTTP服务器 http/2 Java RMI,Socket,HttpClient cookie与session cookie被禁用,如何实现session 了解nginx和apache服务器的特性并搭建一个对应的服务器 进程间通讯的方式 什么是CDN?如何实现? DNS 什么是DNS 记录类型 A记录 CNAME记录 AAAA记录等 域名解析 根域名服务器 DNS污染 DNS劫持 公共DNS 114 DNS Google DNS OpenDNS 代理 反向代理 正向代理 反向代理服务器 框架知识 Servlet 生命周期 线程安全问题 filter和listener web.xml中常用配置及作用 Hibernate 什么是OR Mapping Hibernate的缓存机制 Hibernate的懒加载 Hibernate/Ibatis/MyBatis之间的区别 MyBatis MyBatis缓存机制 ‘#{}’和’${}’的区别 mapper中传递多个参数 Mybatis的延迟加载 Spring Bean的初始化 AOP原理 实现Spring的IOC Spring四种依赖注入方式 Spring MVC 什么是MVC Spring MVC与struts MVC的区别 Spring Boot Spring Boot 2.0 起步依赖 自动配置 Spring Boot的starter原理 自己实现一个starter 为什么Spring Boot可以通过main启动web项目 Spring Security Spring Cloud 服务发现与注册 Eureka Zookeeper Consul 负债均衡 Spring Cloud Loadbalance 服务配置 Spring Cloud Config 服务限流与熔断 Hystrix 服务链路追踪 Dapper 服务网关、安全、消息 应用服务器知识 JBoss Tomcat Jetty Weblogic 工具 git & SVN maven & gradle git技巧 分支合并 冲突解决 提交回滚 maven技巧 依赖树 依赖仲裁 Intellij IDEA 常用插件 Maven Helper FindBugs-IDEA 阿里巴巴代码规约检测 GsonFormat Lombok plugin .ignore Mybatis plugin