遇到的面试题记录
1、面试题题目相关的问题,有一张订单表,有个订单日期字段,其他有订单id、下单人、金额信息,要统计每天的总金额,需求查询4月25到6月5号之间的数据,
要求:中间没有日期的也要有展示数据,都是0
2、常量问题
a = new Integer(2)
b = new Integer(2)
a == b是true还是false
Integer.valueOf
结果是false,因为对象不相等
3、业务场景分析,生成一堆300~500之间的常量,如何取一个值,例如267
(其实一直不是特别理解这道题目,随机数生成,写个方法很快的)
3、HashMap和ConcurrentHashMap从数据结构、同步、使用场景详细说下,各自的优缺点
4、JVM、java内存模型
5、现象是前端请求一直转,怎么解决?JVM线上诊断过程,怎么把这个问题解决掉?(注意是在线上环境,连日志都没有)
JPS看Java进程编号,然后jstat命令将dump文件输出出来,分析dump文件(编不下去了),他问然后呢?
6、常用的锁说一下,使用场景
7、MySQL InnoDB引擎的索引,例如user表有id,name,age,sex,
想查询出年龄大于50岁所有的男性的姓名,如何建索引?且保证建的索引有用
8、Linux问题:两台机器文件同步?8080端口占用查看?
scp -r a.txt root@192.168.1.1:/usr/java/
netstat -apn|grep 8080 查看端口占用情况,然后可以kill掉
netstat -tunlp|grep 8080
9、大数据问题:hadoop和Spark有什么区别? 有个20G的大文件,内存只有2G如何进行统计?
这些记得的比较深的一些题目,这只是中级java的面试,高级的除了这些,对分布式、RPC、微服务都要有比较深入,有自己独特的见解