Java常见面试题
文章平均质量分 87
泰勒疯狂展开
这个作者很懒,什么都没留下…
展开
-
Java-常见面试题收集(十三)
Redis,全称Remote Dictionary Server,即远程字典服务,是一个开源的使用ANSI C语言编写的、支持网络的、基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它主要用于缓存数据的计算结果、页面内容、数据库查询结果等,以提高数据访问速度和响应速度,从而提升系统性能和用户体验。Redis具有多种应用场景,包括但不限于:缓存:通过缓存热点数据,减少数据库查询次数,提高访问速度。消息队列:实现异步处理和解耦,提高系统的可扩展性和灵活性。原创 2024-04-14 19:45:46 · 637 阅读 · 0 评论 -
Java-常见面试题收集(十二)
Git、GitHub、Gitee和GitLab都是与版本控制和代码托管相关的工具,但它们在功能和使用上有所不同。Git是一个开源的分布式版本控制系统,主要用于敏捷高效地处理任何或小或大的项目版本管理。它是Linus Torvalds为了帮助管理Linux内核开发而开发的,目的是有效、高速地处理从很小到非常大的项目版本管理。GitHub是一个基于web的版本控制和协作平台,主要用于存储、管理和分享开源代码和项目。原创 2024-04-12 09:17:03 · 994 阅读 · 0 评论 -
Java-常见面试题收集(十一)
Activiti是一个开源的工作流引擎,主要用于管理和执行各种业务流程。它提供了一套强大的工具和API,使得设计、部署和执行工作流变得简单高效。Activiti支持各种工作流模式,如串行、并行和条件分支等,可以满足复杂的业务流程需求。Activiti的主要特性包括流程定义和设计、流程部署和管理以及任务分配和执行。它提供了一个图形化的流程设计器,用户可以使用该设计器来创建和定义工作流程。流程定义完成后,可以将其部署到工作流引擎中,并通过Activiti提供的API进行流程的启动、暂停、恢复、终止等操作。原创 2024-04-11 19:09:56 · 929 阅读 · 0 评论 -
Java-常见面试题收集(十)
Spring Profiles是Spring框架中的一个核心功能,它允许开发者根据不同的环境(如开发、测试和生产环境)注册和激活不同的bean。通过使用@Profile注解,开发者可以将bean映射到特定的Profile,然后在不同的环境中激活不同的Profiles,从而仅加载和引导所需的bean。原创 2024-04-10 19:33:37 · 658 阅读 · 0 评论 -
Java-常见面试题收集(九)
IoC,DI 和 AOP。依赖注入(Dependency Injection, DI):这是Spring框架的核心特性之一。它允许在运行时,由外部源(如配置文件、注解或环境变量)决定一个对象所依赖的其他对象。这样,代码与具体的实现解耦,提高了代码的可维护性、可测试性和松耦合性。依赖注入的主要方式有构造函数注入、Setter方法注入和接口注入。控制反转(Inversion of Control, IOC):这是Spring框架的另一大核心思想。它意味着将创建对象的控制权转移给Spring框架进行管理。原创 2024-03-31 18:32:28 · 1135 阅读 · 0 评论 -
Java-常见面试题收集(八)
加载驱动,通过 DriverManager 对象获取连接对象 Connection,通过连接对象获取会话,通过会话进行数据的增删改查封装对象,关闭资源。原创 2024-03-30 20:37:35 · 969 阅读 · 0 评论 -
Java-常见面试题收集(七)
事务(Transaction)是数据库管理系统执行过程中的一个逻辑单位,它由一个或多个SQL语句组成,这些语句要么全部执行,要么全部不执行。事务是一个不可分割的工作单位,它确保数据库从一种一致性状态转变到另一种一致性状态。如果在执行事务的过程中发生错误,则可以利用事务管理(Transaction Management)机制将数据库恢复到事务执行前的状态。事务有四个基本特性,通常简称为ACID:原子性(Atomicity):事务是一个原子操作单元,其对数据的修改要么全部执行,要么全都不执行。原创 2024-03-29 19:30:02 · 956 阅读 · 0 评论 -
Java-常见面试题收集(五)
同步阻塞 I/O(BIO):同步阻塞 I/O,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,可以通过线程池机制来改善。BIO 方式适用于连接数目比较小且固定的架构,这种方式对服务端资源要求比较高,并发局限于应用中,在 jdk1.4以前是唯一的 io 现在,但程序直观简单易理解。原创 2024-03-28 19:02:10 · 1034 阅读 · 0 评论 -
Java-常见面试题收集(四)
线程死锁是指两个或两个以上的线程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞现象。具体表现为,这些线程相互等待对方释放资源,但由于它们都持有对方所需的资源并不愿释放,导致了一个无解的循环等待状态。在这种情况下,若无外力作用,它们都将无法继续执行,系统因此处于死锁状态。死锁是多线程开发中应该坚决避免和杜绝的问题,因为它会导致程序无法正常终止,严重影响系统的性能和稳定性。线程死锁通常由以下四个必要条件造成:互斥条件:一个资源每次只能被一个线程使用。原创 2024-03-24 14:08:28 · 653 阅读 · 0 评论 -
Java-常见面试题收集(三)
List,Set 接口继承于 Collection 接口Map 没有继承于 Collection 接口。原创 2024-03-21 19:50:07 · 706 阅读 · 0 评论 -
Java-常见面试题收集(二)
堆。堆是 Java 对象的存储区域,任何用 new 字段分配的 Java 对象实例和数组,都被分配在堆上,Java 堆可使用-Xms -Xmx 进行内存控制,值得一提的是从JDK1.7 版本之后,运行时常量池从方法区移到了堆上。方法区。它用于存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据,方法区在 JDK1.7 版本及以前被称为永久代,从 JDK1.8 永久代被移除。虚拟机栈。虚拟机栈中执行每个方法的时候,都会创建一个栈帧用于存储局部变量表,操作数栈,动态链接,方法出口等信息。原创 2024-03-14 18:41:40 · 882 阅读 · 0 评论 -
Java-常见面试题收集(一)
String 类中使用 final 关键字修饰字符数组来保存字符串,private final char[] value,所以 String 对象是不可变的。原创 2024-03-06 20:20:48 · 826 阅读 · 0 评论