2022年秋招已来,Java面试之Spring框架你知道吗?


1. 什么是AOP、Spring AOP的底层原理是什么

AOP是面向切面编程,用于在不改变原有逻辑的基础上增加一些额外的功能,如事务管理、日志、缓存、权限控制等。
Spring AOP是基于代理的。
如果目标对象实现了接口,则默认采用JDK动态代理。
如果目标对象没有实现接口,则采用CgLib进行动态代理
如果目标对象实现了接口,且强制CgLib代理,则采用CgLib动态代理。

2. 什么是IOC、IOC注入方式有哪些

IOC翻译为控制反转,他还有个别名为DI(依赖注入)。

IOC就是由IOC容器来负责对象的生命周期和对象之间的关系
控制反转就是本来应该你做的事情,让系统去做,比如通常获取一个对象需要通过new,而使用IOC则是IOC将对象创建后注入到被注入的对象中。
注解注入(Spring)、构造器注入setter方法注入、接口方式注入(不推荐)


3. Mybatis中 #{} 和 ${}的区别

#{}是预编译,可防止SQL注入

${}是直接拼接在SQL语句中。

4. Spring Boot的核心注解是什么,它是由哪几个注解组成的


核心注解:@SpringBootApplication

包含:
@SpringBootConfiguration 实现配置文件功能
@EnableAutoConfiguration 打开自动配置功能
@CompoentScan 组件扫描功能

5. SpringBoot 怎么读取配置文件

属性上使用@Value注解

类上使用@ConfigurationProperties注解
读取指定文件注解可在类上使用@PropertySource(不支持yml文件读取)
注入Environment对象获取到。

6. SpringCloud和Dubbo的区别

SpringCloud采用基于HTTP的REST API,Dubbo采用RPC方式。

7. SpringCloud的Hystrix断路器特性

请求熔断:请求服务失败量超过一定比例(默认50%)断路器会切换到开路状态,这时所有请求不会发送到后端服务,断路器在保持开路状态一段时间后(默认5秒),自动切换到半开路状态。这时如果下一次请求成功,断路器切回闭路状态,否则重新切换到开路状态。
服务降级:对于查询操作,可以实现一个fallback方法。当请求服务出现异常时,可以使用fallback方法返回的值。
依赖隔离:通过线程池来实现资源隔离,比如一个服务调用另外两个服务,如果这两个服务在同一线程池,那么如果一个服务卡住,后面的请求又来了,就会导致后面的请求都会卡住等待。
请求缓存:缓存上次请求结果,返回给后续请求。
请求合并:把多个请求合并成一个请求,提升效率。


#2022秋招##java##Spring#
全部评论
开始背,希望面试能碰上
点赞 回复 分享
发布于 2022-08-19 19:42 陕西

相关推荐

勇敢牛牛不怕困难,希望能过初筛
投递韶音科技等公司10个岗位
点赞 评论 收藏
分享
评论
3
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务