java高级面试题目,高级java面试问题大全及答案大全
1、redis如何跟本地数据同步?
mysql的更新、添加、删除都会同步操作redis。
查询redis程序,不存在就查询mysql,自动保存redis。
2、redis几种数据结构?
集合、列表、哈希、字符串、zset
3、java内存溢出是如何造成的?
OutOfMemoryError错误:
(pergernspace程序中使用了大量的jar或类,导致虚拟机加载类空间不足。
解决方法:调整XX:PermSize和XX:MaxPermSize,减少jar包,减少类的重复加载。
(2)Java堆
空间Java虚拟机创建了太多对象。解决方法:调整Xms(初始化堆大小)Xmx(最大堆大小),检查无限循环或不必要的重复对象。
(3)无法创建新的本机线程
JVM占用了太多的内存空间,在JVM中创建线程需要在操作系统中创建线程。解决方法:调整JVM中的线程大小。
4、String s = “123”,这个语句有多少对象产生?
如果字符串池中没有“123”,就会生成一个放入常量池;如果有“123”,将生成0。
5、JDK8的新特性,举例描述
(1)lambda表达式:函数式编程,方法参考
(2)流API
(3)默认的接口方法
(4)日期时间API的改进,增加了DateTimeFormatter方法
6、解决高并发和高负载
(1) html尽量静态,采用信息录入和发布系统CMS,通过信息录入自动生成静态页面,不经常变化的动态数据在前端缓存。
(2)CDN加速,将CSS/JS等资源分布在不同的服务器上。
(3)缓存不经常变化的数据(Redis,memcache)。
(4)图片服务器与应用服务器分离。
(5)集群
7、生产者和消费者模型得瑟作用是什么?
(1)通过平衡生产能力和消费者的消费能力,提高整个系统的运行效率;(2)脱钩。
8、Mybatis一级、二级缓存
(1)一级缓存:基于PerpetualCache的HashMap本地缓存,其存储范围为Session,当Session
刷新或关闭后,此会话中的所有缓存都将被清空。
(2)L2缓存的机制与L1缓存相同。默认情况下,它使用PerpetualCache和HashMap进行存储,这与存储范围中的Mapper不同。您还可以自定义存储源。如果你需要打开L2缓存。添加到sql映射文件中
9、描述一个服务从发布到被消费的详细过程
首先获取zk的配置信息,然后获取要暴露的url,然后调用registry,register方法将url注册到zookeeper。
10、如何实现负载均衡,有哪些算法可以实现?
随机、循环、一致散列和主从。
11、如果要你实现Spring AOP,怎么实现?
aop技术的实现可以分为两类:一类是采用动态代理技术,通过截取消息来修饰消息,代替原来对象行为的执行。
第二,采用静态编织的方法,引入特定的语法来创建“方面”,使编译器将相关的“方面”相互编织在一起。
12、如何防止页面重复提交?
集群环境:采用token加Redis(Redis单线程,处理需要排队)
处理流程:
1.在提交数据之前,您应该向服务申请令牌,并将令牌放在redis内存中。令牌在一段时间内有效。
2.提交后,在后台检查令牌,删除令牌,生成新令牌返回。
13、什么是微服务?
根据不同的业务规则将项目拆分成微服务,部署在不同的机器上。服务之间互相调用。
14、什么是web服务?
(1)web service是一个应用程序,它公开了一个可以通过web调用的API。
(2)基于HTTP协议的数据传输,使得运行在不同计算机上的不同应用能够在不需要额外的、专门的第三方软硬件的情况下进行数据交换或相互集成。
15、谈一下你的项目选择Struts2的理由?
Action是一个POJO类,不依赖Servlet API,测试性好;强大的拦截器,简化了开发的复杂度;
支持多种表示层技术:JSP、Freemarker等。灵活的验证方法;国际化(I18N)支持声明式异常管理;
简化Ajax通过JSON插件;通过Spring插件与Spring集成;
16、谈一下拦截器和过滤器的区别?
拦截器和过滤器都可以用来实现横切关注点,区别如下:拦截器基于JAVA反射机制,过滤器基于函数回调。
过滤器依赖于Servlet容器,而拦截器不依赖。
拦截器只能处理动作请求(动作中的方法),而过滤器可以处理几乎所有的请求(CSS JSP JS)
17、Spring支持的事务管理类型?
程序化事务管理:通过编程来管理事物,灵活性极强,维护难度大。
声明式事务管理:业务代码和事务管理可以分开,只需要注释和XML配置来管理事情。
我们,大量免费的Java入门教程,欢迎在线学习!以上是Java高级面试问题的详细内容(附答案)。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。