05 2019 档案
摘要:背景:在中国网安的面试过程中遇到这个问题,好长时间没用了,说不出个所以然来。MyBatis与Hibernate区别 7、Hibernate与MyBatis对比 7.1 相同点 Hibernate与MyBatis都可以是通过SessionFactoryBuider由XML配置文件生成SessionFa
阅读全文
摘要:背景:hashmap面试基础必考内容,需要深入了解,并学习其中的相关原理。此处还要明白1.7和1.8不通版本的优化点。 Java 8系列之重新认识HashMap Java 8系列之重新认识HashMap 鉴于JDK1.8做了多方面的优化,总体性能优于JDK1.7,下面我们从两个方面用例子证明这一点(
阅读全文
摘要:背景:最近美团在招聘,打算好好准备准备简历,然后投递一波。 美团点评 社招 一面(3.6中午)结果通过 美女面试官 1 HashMap的put怎么实现,如何解决hash冲突。调用putval,计算相应hash码,然后初始化(默认64的capacity)或调用resize函数调整大小,判断bucket
阅读全文
摘要:背景:java容器是面试中基础的基础,所以 有必要对着源码撸一遍。 进行了高度总结,首推: https://github.com/CyC2018/CS-Notes/blob/master/notes/Java%20%E5%AE%B9%E5%99%A8.md LinkedHashMap 的实现原理 下
阅读全文
摘要:背景:泛型这个知识点平时用的不多,但是在面试的时候很容就被问到,所以还是要准备一些基础的知识储备。 面试旧敌之 Java 泛型 :主要概念及特点 “泛型” 意味着编写的代码可以被不同类型的对象所重用。 泛型是在JDK1.5之后出现的。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数
阅读全文
摘要:背景:讲设计模式的时候,最好能够结合源码来进行理解,逼格更高 设计模式也可以这么简单 ps:强烈推荐,感觉看这一篇就够了 策略模式 泛型接口比较实用的使用场景就是用作策略模式的公共策略,比如 Java 解惑:Comparable 和 Comparator 的区别 中介绍的 Comparator,它就
阅读全文
摘要:背景:redis问题在面试过程中经常被问到,对于常见问题一定不能放过。 面试前必知Redis面试题—缓存雪崩+穿透+缓存与数据库双写一致问题 一、缓存雪崩 1.1什么是缓存雪崩? 如果缓存数据设置的过期时间是相同的,并且Redis恰好将这部分数据全部删光了。这就会导致在这段时间内,这些缓存同时失效,
阅读全文
摘要:背景:对于后台开发,需要了解与集群相关的工作。 深入浅出Redis-redis哨兵集群 Sentinel(哨兵)是Redis 的高可用性解决方案:由一个或多个Sentinel 实例 组成的Sentinel 系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线
阅读全文
摘要:背景:被问到很基础的知识点 string 自己答的很模糊 Java中的String为什么是不可变的? -- String源码分析 ps:最好去阅读原文 String 为什么不可变 ? 什么是不可变类?不可变类只是其实例不能被修改的类。每个实例中包含的所有信息都必须在创建该实例的时候就提供,并且在对象
阅读全文
摘要:背景:面试时候问到为什么不用jetty而选择用tomcat,自己一时不知道其中的原因,很惭愧。 Tomcat与Jetty区别 一、简介 Tomcat: Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、S
阅读全文
摘要:背景:jvm相关题目面试必问,后面要深入的进行总结。 JVM 面试知识整理 jvm调优命令 调优工具 Minor GC ,Full GC 触发条件 Minor GC触发条件:当Eden区满时,触发Minor GC。 Full GC触发条件: (1)调用System.gc时,系统建议执行Full GC
阅读全文
摘要:jmap查看内存使用情况与生成heapdump
阅读全文