0

0

Java中高级面试题(附答案)

angryTom

angryTom

发布时间:2019-11-14 16:51:07

|

11855人浏览过

|

来源于CSDN

转载

Java中高级面试题(附答案)

1、redis如何跟本地数据同步?

程序实现mysql更新、添加、删除就会同步操作redis

程序查询redis,不存在就查询mysql,自动保存redis

2、redis几种数据结构?

set、list、hash、string、zset

立即学习Java免费学习笔记(深入)”;

3、java内存溢出是如何造成的?

OutOfMemoryError:

(1)PerGern Space 程序中使用了大量的jar或class,使虚拟机装载类空间不够。

解决方案:调参 XX:PermSize 和XX:MaxPermSize、减少jar包减少类的重复加载 

(2)Java Heap

Space Java虚拟机创建太多对象。 解决方法:调参Xms(初始化堆大小)Xmx(最大堆大小)、检查死循环或不必要创建的重复对象。

(3)unable to create new native Thread

JVM占用了太多内存空间,而在JVM中创建线程还要再操作系统中创建线程。 解决方案:调整JVM中线程大小。

4、String s = “123”,这个语句有多少对象产生?

若字符串池中没有“123”,则产生一个,并且放入常量池中,若有“123”,则产生0个

5、JDK8的新特性,举例描述

(1)lambda表达式:函数式编程,方法的引用 

(2)Stream 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

flush或close之后,该Session中的所有Cache就将清空。

Kacha
Kacha

KaCha是一款革命性的AI写真工具,用AI技术将照片变成杰作!

下载

(2)二级缓存与一级缓存机制相同,默认也是采用PerpetualCache,HashMap存储,不同在存储作用域Mapper,并且可自定义存储源,如需开启二级缓存。在sql映射文件添加

9、描述一个服务从发布到被消费的详细过程

首先获取zk的配置信息,然后获取需要暴露的url,然后调用registry,register方法将url注册到zookeeper上去

10、如何实现负载均衡,有哪些算法可以实现?

随机(random)、轮训(round-robin)、一致哈希(consistent-hash)和主备(master-slave)

11、如果要你实现Spring AOP,怎么实现?

实现aop技术,主要分为两大类:一采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行

二是采用静态织入的方式,引入特定语法创建“方面”,从而使得编译器间织入有关“方面”的代码

12、如何防止页面重复提交?

集群环境:采用token加redis(redis是单线程的,处理需要排队)

处理流程:

1、数据提交前要向服务申请token,token放到redis内存,token有效时间

2、提交后后台校验token,同时删除token,生成新的token返回

13、什么是微服务?

将工程根据不同的业务规则拆分成微服务,部署在不同的机器上。服务间进行相互调用

14、什么是web服务?

(1)web service就是一个应用程序,它向外界暴露出一个能够通过web进行调用的API

(2)基于HTTP协议传输数据,这使得运行在不同机上的不同应用程序,无需借助附加的、专门的第三方软件和硬件,就可以相互交换数据或集成

15、谈一下你的项目选择Struts2的理由?

①Action是POJO类,没有依赖Servlet API,具有良好的可测试性; ②强大的拦截器,简化了开发的复杂度;

③支持多种表现层技术:JSP、Freemarker等; ④灵活的验证方式; ⑤国际化(I18N)支持 ⑥声明式异常管理;

⑦通过JSON插件简化Ajax; ⑧通过Spring插件跟Spring整合;

16、谈一下拦截器和过滤器的区别?

拦截器和过滤器都可以用来实现横切关注功能,其区别主要在于: ①拦截器是基于JAVA反射机制的,而过滤器是基于函数回调的

②过滤器依赖于Servlet容器,而拦截器不依赖于Servlet容器

③拦截器只能对Action请求起作用(Action中的方法),而过滤器可以对几乎所有的请求起作用(CSS JSP JS)

17、Spring支持的事务管理类型?

编程式事务管理:编程的方式管理事物,极大的灵活性,难维护

声明式事务管理:可以将业务代码和事物管理分离、只需要用注解和XML配置来管理事物

php中文网,大量的免费Java入门教程,欢迎在线学习! 

相关文章

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

65

2025.12.31

php网站源码教程大全
php网站源码教程大全

本专题整合了php网站源码相关教程,阅读专题下面的文章了解更多详细内容。

43

2025.12.31

视频文件格式
视频文件格式

本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。

35

2025.12.31

不受国内限制的浏览器大全
不受国内限制的浏览器大全

想找真正自由、无限制的上网体验?本合集精选2025年最开放、隐私强、访问无阻的浏览器App,涵盖Tor、Brave、Via、X浏览器、Mullvad等高自由度工具。支持自定义搜索引擎、广告拦截、隐身模式及全球网站无障碍访问,部分更具备防追踪、去谷歌化、双内核切换等高级功能。无论日常浏览、隐私保护还是突破地域限制,总有一款适合你!

41

2025.12.31

出现404解决方法大全
出现404解决方法大全

本专题整合了404错误解决方法大全,阅读专题下面的文章了解更多详细内容。

204

2025.12.31

html5怎么播放视频
html5怎么播放视频

想让网页流畅播放视频?本合集详解HTML5视频播放核心方法!涵盖<video>标签基础用法、多格式兼容(MP4/WebM/OGV)、自定义播放控件、响应式适配及常见浏览器兼容问题解决方案。无需插件,纯前端实现高清视频嵌入,助你快速打造现代化网页视频体验。

9

2025.12.31

关闭win10系统自动更新教程大全
关闭win10系统自动更新教程大全

本专题整合了关闭win10系统自动更新教程大全,阅读专题下面的文章了解更多详细内容。

8

2025.12.31

阻止电脑自动安装软件教程
阻止电脑自动安装软件教程

本专题整合了阻止电脑自动安装软件教程,阅读专题下面的文章了解更多详细教程。

3

2025.12.31

html5怎么使用
html5怎么使用

想快速上手HTML5开发?本合集为你整理最实用的HTML5使用指南!涵盖HTML5基础语法、主流框架(如Bootstrap、Vue、React)集成方法,以及无需安装、直接在线编辑运行的平台推荐(如CodePen、JSFiddle)。无论你是新手还是进阶开发者,都能轻松掌握HTML5网页制作、响应式布局与交互功能开发,零配置开启高效前端编程之旅!

2

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 2.2万人学习

C# 教程
C# 教程

共94课时 | 5.7万人学习

Java 教程
Java 教程

共578课时 | 40.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号