栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

5.19号面试题总结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

5.19号面试题总结

1.还是那些东西。。自我介绍,项目介绍啥的。。。。 2.说一说mybatisPlus的一级缓存、二级缓存、批量插入、#{} 和 ${}符号的区别       一级缓存:

        mybatisPlus的一级缓存是Session缓存,作用域:SqlSession,每个sqlSession之间有一个单独的mapper,彼此之前不受影响,第一次查询的时候会先从数据库查,然后放到缓存里,第二次如果执行相同的SQL语句,就会直接从缓存里面拿取。

        缓存失效:执行增删改操作,会把缓存里面的数据清空,为了防止出现脏读。

       二级缓存:

         mybatisPlus的二级缓存是Mapper,作用域是同一个nameSpace下的Mapper文件内容,每个SqlSession共用一个Mapper。 一次会话查询一条数据,会把这个数据放到当前会话的一级缓存里,如果当前会话失效了,就会把一级缓存的数据放到二级缓存里,然后新的会话就会参考二级缓存。

3.redis的缓存雪崩

缓存雪崩的含义是在某个时间点,缓存key大量失效,导致请求全都落在数据库服务器上,对数据库服务器造成巨大的压力,可能会引起系统的崩溃。

解决办法:

1.可以对请求进行限流。

2.可以设置redis集群,保证服务的高可用。

4.说一下你的项目中SpringCloud用到了哪些组件?

Nacos(注册中心)、gateWay(网关)、Sentinel(熔断器)、Ribbon(负载均衡)、SpringSecurity + oauth2.0(安全认证授权中心)

5.你有没有用到其他的注册中心?(除去nacos)

Zookeeper、Dubbo

6.简单说一下Spring是什么?

Spring有两个核心概念:IOC控制反转和AOP切面,IOC就是说Spring创建完bean的时候,把bean统一交给Spring容器来保管。Aop切面就是对某个类的某个方法进行增强,Aop是基于动态代理实现的,常见的动态代理方式有:JDK动态代理,CGLIB动态代理。

7.怎样解决Spring的循环依赖问题?

循环依赖问题:

 

        

Spring应用了缓存模式来解决循环依赖问题:

三级缓存:

        一级缓存:singletonObjects 用于保存实例化、注入、初始化完成的bean实例。

        二级缓存:earlySingleton 用于保存实例化完成的bean实例。

        三级缓存:根据bean来创建工厂,用于以后扩展生成代理对象。

 

8.SpringMVC怎么设置重定向和转发?

重定向:redirect

转发:forward

9.SpringMVC有哪些注解?

@RequstBody

@RequestParam

@PathVariable

@RestController

@RequestMapping

...

10.SpringBoot和SpringCloud的区别?

首先SpringBoot是单体架构,SpringCloud的微服务架构,可以实现低耦合,高内聚,简化开发,使服务器减少压力,实现高可用。

11.Nginx负载均衡和Ribbon的负载均衡有什么不同?

Nginx负载均衡是基于服务器的负载均衡,可以对所有请求进行转发到Nginx服务器,然后用Nginx分发服务。Ribbon是基于客户端进行负载均衡,将Eureka或者Nacos上的服务地址缓存到本地,然后通过Ribbon的负载均衡策略来达到均衡分发服务的效果。

12.当涉及到判断语句中有聚合函数应该用哪个?(肯定不是where)

用Having。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/919574.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号