java笔试 - 套题(八)

这篇博客整理了Java笔试中涉及的基础题、前端、中间件、持久层+数据库及实战场景的问题,包括Cookie与Session的区别、Spring Boot自动配置原理、RabbitMQ消息唯一消费及Redis数据类型的应用等。同时提供了相关解决方案,如使用分布式缓存实现Session共享,理解JavaScript中'=='与'==='的区别,以及如何实现订单未支付自动取消等业务逻辑。
摘要由CSDN通过智能技术生成

答案见下方

基础题

1、cookie和 session的区别,分布式环境怎么保存用户状态
2、RequestMapping和 GetMapping的不同之处在哪里?
3、Spring Boot提供了哪些 Starter Project Options?选一个比较熟悉的介绍。
4、Spring Boot自动配置原理是什么?
5、介绍 SpringCloud中的 gateway或zuul,如何实现动态路由?

前端方面

6、JavaScript里“==”和“===”的区别
7、比较下Flex布局和 Float布局
8、JS里,this 关键字指向的是什么?

中间件

9、如何实现异步请求(队列)?
10、rabbitmg有哪些重要的角色?
11、rabbitmq 如何保证消息的唯一消费及稳定性?
12、如何实现订单30分钟未支付自动取消并通知客户的功能?
13、Redis有哪些数据类型,分别介绍使用场景?
14、如何使用 Redis实现考试分数排名?

持久层+数据库


15、mybatis是否支持证迟加载?延迟加载的原理是什么?
16、简单描述你在项目中有代表性的mysql 优化经验

实战场景

17、微信对接token失效,如何确保在不间断中请求正常?
18、预约报名业务,怎么来保证每次报名都是有序且正常进行?

答案

1,Session和Cookie的区别?

1、数据存储位置:cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、安全性:cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。
3、服务器性能:session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4、数据大小:单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。session存储在我们的服务器端,没有存储数量限制,可以保存更多复杂类型的数据结构
5、信息重要程度:可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。
6、生命周期不同:以20分钟为例,cookie的生命周期是累计的,从创建时开始计时,20分钟后cookie生命周期就结束了。session的生命周期是间隔的,从创建时开始计时,如果在20分钟内没有访问的我们的session,那么session生命周期就被销毁了,但是如果在20分钟内,比如第19分钟时呢访问过session,那么将重新计时session生命周期
分布式环境下的session(举例两种):
1,服务器session复制
原理: 任何一个服务器上的session发生改变(增删改),该节点会把这个 session的所有内容序列化,然后广播给所有其它节点,不管其他服务器需不需要session,以此来保证Session同步。
优点: 可容错,各个服务器间session能够实时响应。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值