java高级面试题

这篇博客汇总了Java面试中常遇到的高级问题,涵盖并发控制、Spring框架、数据库优化、JVM、线程池、垃圾回收、设计模式等多个方面。通过讨论AQS、线程安全、Tomcat参数调整、数据库索引、死锁排查、分布式锁实现等关键知识点,旨在帮助开发者全面准备面试。
摘要由CSDN通过智能技术生成

1

1.多个线程同时读写,读线程的数量远远大于写线程,你认为应该如何解决并发的问题?你会选择加什么样的锁?
2.JAVA的AQS是否了解,它是干嘛的?
3.除了synchronized关键字之外,你是怎么来保障线程安全的?
4.Tomcat本身的参数你一般会怎么调整?
5.你有没有用过Spring的AOP? 是用来干嘛的? 大概会怎么使用?
6.如果一个接口有2个不同的实现, 那么怎么来Autowire一个指定的实现?
7.如果想在某个Bean生成并装配完毕后执行自己的逻辑,可以什么方式实现?
8.SpringBoot没有放到web容器里为什么能跑HTTP服务?
9.SpringBoot中如果你想使用自定义的配置文件而不仅仅是application.properties,应该怎么弄?
10.SpringMVC如果希望把输出的Object(例如XXResult或者XXResponse)这种包装为JSON输出, 应该怎么处理?
11.如果有很多数据插入MYSQL 你会选择什么方式?
12.如果查询很慢,你会想到的第一个方式是什么?索引是干嘛的?
13.查询死掉了,想要找出执行的查询进程用什么命令?找出来之后一般你会干嘛?
14.读写分离是怎么做的?你认为中间件会怎么来操作?这样操作跟事务有什么关系?
15.分库分表有没有做过?线上的迁移过程是怎么样的?如何确定数据是正确的?
16.你知道哪些或者你们线上使用什么GC策略? 它有什么优势,适用于什么场景?
17.JAVA类加载器包括几种?它们之间的父子关系是怎么样的

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值