随笔分类 - 面试题
摘要:Spring JavaConfig 是 Spring 社区的产品,它提供了配置 Spring IoC 容器的纯Java 方法。因此它有助于避免使用 XML 配置。使用JavaConfig 的优点在于:1、面向对象的配置。由于配置被定义为 JavaConfig 中的类,因此用户可以充分利用 Java
阅读全文
摘要:这可以使用 DEV 工具来实现。通过这种依赖关系,您可以节省任何更改,嵌入式tomcat 将重新启动。Spring Boot 有一个开发工具(DevTools)模块,它有助于提高开发人员的生产力。Java 开发人员面临的一个主要挑战是将文件更改自动部署到服务器并自动重启服务器。开发人员可以重新加载
阅读全文
摘要:81、有哪些不同类型的IOC注入方式 构造器依赖注入:构造器依赖注入通过容器触发一个类的构造器来实现的,该类有一系列参数,每个参数代表一个对其他类的依赖 Setter 方法注入:Setter 方法注入是容器通过调用无参构造器或无参static 工厂 方法实例化 bean 之后,调用该 bean 的
阅读全文
摘要:64、解释一下spring bean的生命周期 首先说一下Servlet的生命周期:实例化,初始init,接收请求service,销毁destroy;Spring上下文中的Bean生命周期也类似,如下: (1)实例化Bean: 对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean
阅读全文
摘要:30、@Qualifier注解有什么用? 当您创建多个相同类型的 bean 并希望仅使用属性装配其中一个 bean 时,您可以使用@Qualifier 注解和 @Autowired 通过指定应该装配哪 个确切的 bean 来消除歧义。 例如,这里我们分别有两个类,Employee 和 EmpAcco
阅读全文
摘要:1、不同版本的Spring Framework有哪些主要功能? 2、什么是 Spring Framework?Spring 是一个开源应用框架,旨在降低应用程序开发的复杂度。它是轻量级、松散耦合的。它具有分层体系结构,允许用户选择组件,同时还为 J2EE 应用程序开发提供了一个有凝聚力的框架。它可以
阅读全文
摘要:12、如何将memcached中item批量导入导出? 您不应该这样做!Memcached 是一个非阻塞的服务器。任何可能导致memcached 暂停或瞬时拒绝服务的操作都应该值得深思熟虑。向memcached中批量导入数据往往不是您真正想要的!想象看,如果缓存数据在导出导入之间发生了变化,您就需要
阅读全文
摘要:1、Memcached 是什么,有什么作用? Memcached 是一个开源的,高性能的内存绶存软件,从名称上看 Mem 就是内存的意思,而 Cache 就是缓存的意思。Memcached 的作用:通过在事先规划好的内存空间中临时绶存数据库中的各类数据,以达到减少业务对数据库的直接高并发访问,从而达
阅读全文
摘要:1、什么是 Redis? Redis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key-value 数据库。 Redis 与其他 key - value 缓存产品有以下三个特点:Redis 支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis 不仅
阅读全文
摘要:38、列对比运算符是什么? 在SELECT语句的列比较中使用=,<>,<=,>=,<,>,<<,>>,<=>,AND,OR或LIKE运算符。 39、BLOB和TEXT有什么区别? BLOB是一个二进制对象,可以容纳可变数量的数据。TEXT是一个不区分大小写的BLOB。 BLOB和TEXT类型之间的唯
阅读全文
摘要:1、数据库存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。存储引擎主要有:
阅读全文
摘要:大表如何优化? 当MySQL单表记录数过大时,数据库的CRUD性能会明显下降,一些常见的优化措施如下:限定数据的范围 务必禁止不带任何限制数据范围条件的查询语句。比如:我们当用户在查询订单历史的时候,我们可以控制在一个月的范围内; 读/写分离 经典的数据库拆分方案,主库负责写,从库负责读;垂直分区
阅读全文
摘要:SQL 标准定义了四个隔离级别: READ-UNCOMMITTED(读取未提交):最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。READ-COMMITTED(读取已提交):允许读取并发事务已经提交的数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生。 REPEATA
阅读全文
摘要:67、JVM内存模型线程独占:栈,本地方法栈,程序计数器线程共享:堆,方法区 68、栈又称方法栈,线程私有的,线程执行方法是都会创建一个栈阵,用来存储局部变量表,操作栈,动态链接,方法出口等信息.调用方法时执行入栈,方法返回式执行出栈. 69、本地方法栈与栈类似,也是用来保存执行方法的信息.执行Ja
阅读全文
摘要:29、标记清除算法( Mark-Sweep)最基础的垃圾回收算法,分为两个阶段,标注和清除。标记阶段标记出所有需要回收的对象,清除阶段回收被标记的对象所占用的空间。如图 30、复制算法(copying)为了解决 Mark-Sweep 算法内存碎片化的缺陷而被提出的算法。按内存容量将内存划分为等大小的
阅读全文
摘要:1、java中会出现内存泄漏吗?前简述 会。自己实现堆载的数据结构时有可能会出现的内存泄露,可参考看effective java 2、64位JVM中,int的长度是多数? java中,int类型变量的长度是一个固定值,与平台无关,都是32位,意思是说,在32位和64位的java虚拟机中,int类型的
阅读全文
摘要:92、在 Java 中 Executor 和 Executors 的区别? Executors 工具类的不同方法按照我们的需求创建了不同的线程池,来满足业务的需求。Executor 接口对象能执行我们的线程任务。ExecutorService 接口继承了 Executor 接口并进行了扩展,提供了更
阅读全文
摘要:1、什么SpringMVC? SpringMVC是Spring的一个模块,基于MVC的一个框架,无需中间整合层来整合。 2、SpringMVC的优点: 1)它是基于组件技术的,全部的应用对象,无论控制器和视图,还是业务对象之类都是java组件,并且和Spring提供的其他基础结构紧密集成 2)不依赖
阅读全文
摘要:1、在java中守护线程和本地线程区别 java 中的线程分为两种:守护线程(Daemon)和用户线程(User)。 任何线程都可以设置为守护线程和用户线程,通过方法 Thread.setDaemon(boolon);true 则把该线程设置为守护线程,反之则为用户线程。Thread.setDaem
阅读全文
摘要:1、寄存器 是cpu内部的数量较少但速度很快的内存(对应的是cpu外部相对较慢的RAM主内存)。寄存器通过对常用值(通常是运算的中间值)的快速访问来提高计算机程序运行的速度。 2、程序计数器 是一个专用的寄存器,用于表明指令序列中 CPU 正在执行的位置,存的值为正在执行的指令的位置或者下一个将要被
阅读全文