![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java面试整理
Angus博客
知足长乐,助人为乐,自得其乐。
展开
-
Java 最常见的面试题目录整理
抽时间整理了一些面试题希望对你有帮助,面试题包含的内容了十九了模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。如下图所示:...原创 2019-04-22 10:32:33 · 601 阅读 · 0 评论 -
第十八部分“Redis”模块的题和答案
十八、Redis179.redis是什么?都有哪些使用场景?Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis使用场景:数据高并发的读写 海量数据的读写 对扩展性要求高的数据180.redis有哪些功能?数据缓存功能 分布式锁的功能 支持数据持久化 支持...原创 2019-05-07 09:51:13 · 425 阅读 · 0 评论 -
第十七部分“”MySql”模块的题和答案
十七、MySql164. 数据库的三范式是什么?第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。 第二范式:要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性。 第三范式:任何非主属性不依赖于其它非主属性。165. 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 mysql 数据库,又插入了一条数据,此时 i...原创 2019-05-07 09:50:36 · 328 阅读 · 2 评论 -
第十六部分“Zookeeper”模块的题和答案
十六、Zookeeper157. zookeeper 是什么?zookeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 google chubby 的开源实现,是 hadoop 和 hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。158. zookeeper 都有哪些功能?集群管理:监控节点...原创 2019-05-07 09:49:52 · 714 阅读 · 0 评论 -
第十五部分“Kafka”模块的题和答案
十五、Kafka152. kafka 可以脱离 zookeeper 单独使用吗?为什么?kafka 不能脱离 zookeeper 单独使用,因为 kafka 使用 zookeeper 管理和协调 kafka 的节点服务器。153. kafka 有几种数据保留的策略?kafka 有两种数据保存策略:按照过期时间保留和按照存储的消息大小保留。154. kafka 同时设置了 ...原创 2019-05-06 17:45:05 · 360 阅读 · 0 评论 -
第十四部分“RabbitMQ”模块的题和答案
十四、RabbitMQ135. rabbitmq 的使用场景有哪些?①. 跨系统的异步通信,所有需要异步交互的地方都可以使用消息队列。就像我们除了打电话(同步)以外,还需要发短信,发电子邮件(异步)的通讯方式。②. 多个应用之间的耦合,由于消息是平台无关和语言无关的,而且语义上也不再是函数调用,因此更适合作为多个应用之间的松耦合的接口。基于消息队列的耦合,不需要发送方和接收方同时在线。...原创 2019-05-06 17:44:26 · 396 阅读 · 0 评论 -
第十三部分“Mybatis”模块的题和答案
十三、Mybatis125. mybatis 中 #{}和 ${}的区别是什么?#{}是预编译处理,${}是字符串替换; Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值; Mybatis在处理${}时,就是把${}替换成变量的值; 使用#{}可以有效的防止SQL注入,提高系统安全性。126. mybatis 有...原创 2019-05-06 17:43:44 · 438 阅读 · 0 评论 -
第十二部分“Hibernate”模块的题和答案
十二、Hibernate113. 为什么要使用 hibernate?对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。 Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作 hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。 hibernate的性能非常好,因为它是个轻量级框架...原创 2019-05-06 17:42:36 · 365 阅读 · 0 评论 -
第十一部分“Spring Boot/Spring Cloud”模块的题和答案
十一、Spring Boot / Spring Cloud104. 什么是 spring boot? 在Spring框架这个大家族中,产生了很多衍生框架,比如 Spring、SpringMvc框架等,Spring的核心内容在于控制反转(IOC)和依赖注入(DI),所谓控制反转并非是一种技术,而是一种思想,在操作方面是指在spring配置文件中创建<bean>,依赖注入即为...原创 2019-05-05 15:00:18 · 743 阅读 · 3 评论 -
第九部分“设计模式”和第十部分“Spring/Spring MVC”模块的题和答案
第九部分设计模式88. 说一下你熟悉的设计模式?参考:常用的设计模式汇总89. 简单工厂和抽象工厂有什么区别?简单工厂模式:这个模式本身很简单而且使用在业务较简单的情况下。一般用于小项目或者具体产品很少扩展的情况(这样工厂类才不用经常更改)。它由三种角色组成:工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑,根据逻辑不同,产生具体的工厂产品。如例子中的D...原创 2019-05-05 10:04:50 · 773 阅读 · 0 评论 -
第八部分“网络”模块的题和答案
网络79. http 响应码 301 和 302 代表的是什么?有什么区别? 301,302都是HTTP状态的编码,都代表着某个URL发生了转移。区别:301 redirect: 301 代表永久性转移(Permanently Moved)。 302 redirect: 302 代表暂时性转移(Temporarily Moved )。80. forward 和...原创 2019-04-30 15:48:18 · 635 阅读 · 0 评论 -
第七部分“异常”模块的题和答案
异常74. throw 和 throws 的区别?throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理。而throw则是指抛出的一个具体的异常类型75. final、finally、finalize 有什么区别?final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变...原创 2019-04-28 13:58:01 · 297 阅读 · 0 评论 -
第六部分“Java web”模块的题和答案
Java Web64. jsp 和 servlet 有什么区别?jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类) jsp更擅长表现于页面显示,servlet更擅长于逻辑控制。 Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServle...原创 2019-04-23 11:13:45 · 883 阅读 · 0 评论 -
第四部分“反射”和第五部分“对象拷贝”模块的题和答案
文章目录https://javawsj.blog.csdn.net/article/details/89446327第四模块反射57. 什么是反射?反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力Java反射: 在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法Java反射机制主要...原创 2019-04-22 11:51:09 · 257 阅读 · 0 评论 -
第三部分“多线程”模块的题和答案
文章目录https://javawsj.blog.csdn.net/article/details/89446327多线程35. 并行和并发有什么区别?并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔发生。 并行是在不同实体上的多个事件,并发是在同一实体上的多个事件。 在一台处理器上“同时”处理多个任务,在多台处理器上同时处理多个任务。如hadoop分...原创 2019-04-22 11:20:21 · 339 阅读 · 0 评论 -
第二部分“容器”模块的题和答案
文章目录https://javawsj.blog.csdn.net/article/details/8944632718. java 容器都有哪些?常用容器的图录:19. Collection 和 Collections 有什么区别?java.util.Collection 是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collecti...原创 2019-04-22 10:47:56 · 543 阅读 · 0 评论 -
第一部分“Java 基础”模块的题和答案
文章目录https://javawsj.blog.csdn.net/article/details/89446327Java 基础1. JDK 和 JRE 有什么区别?JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。JRE:Java Runtime Environment 的简称,java 运行环境,为 ...原创 2019-04-22 10:33:41 · 300 阅读 · 0 评论 -
第十九部分JVM”模块的题和答案
十九、JVM194.说一下jvm的主要组成部分?及其作用?类加载器(ClassLoader) 运行时数据区(Runtime Data Area) 执行引擎(Execution Engine) 本地库接口(Native Interface)组件的作用:首先通过类加载器(ClassLoader)会把Java代码转换成字节码,运行时数据区(RuntimeDataAr...原创 2019-05-07 09:51:46 · 632 阅读 · 0 评论