携程一面,不分先后:1.自我介绍+项目介绍+觉得遇到的问题2.Synchronized和ReentrantLock区别3.String和StringBuilder区别,比较两个字符串用加号的方式相加时,String和StringBuilder中有什么区别?4.用过哪些集合?ArrayList和LinkedList对比。5.什么情况会使用到锁。6.索引失效有哪几种?列出了几种情景进行分析:a)select * from table where a=1,a上有索引,是否失效。b) 考最左匹配原则,a,b,c是联合索引,问select * from table where a=1 and c=1是否会走索引。7.Mysql和redis有什么区别?为什么有了mysql还要使用redis?8.Redis是否具有持久化的功能?9.Maven是用来做什么的?10.看到简历中写的用过线程池,问怎么创建线程池,然后线程池有什么好处?11.JDK和JRE是什么,有什么区别?12.如何在Linux里查看某个进程的信息?13.Linux中cat指令有什么作用?14.服务器重启是什么指令?15.一道智力题:需要处理10g大小的数据(存在文本文件中),找到最大的那个数,电脑内存大小为2g,如何找到?16.索引了解吗,底层是怎么实现的?17.是否了解git?携程二面:1.自我介绍+项目介绍+问项目里最有成就感的一件事儿1.有个数据表,存储大约1亿条数据,如何在限定时间下写一个method将其复制到另一个相同结构的表中?2.如果一个方法里,有一个数据库对象,有几个接口的调用,如果该方法执行的很慢,怎么排查为什么很慢?3.给了三张表,然后一个界面,界面里有三个参数可以查询结果,分别对应字段1,字段2,字段3,由于查询时联合查询,所以查询起来比较慢,怎么进行优化。表1:orderId(key) ... 字段1表2:orderId(key)... 字段2表3:orderId(key)... 字段3#携程2024暑期实习#