济南超算研究所面试问题

1.自我介绍

姓名等基本情况,学历,想要投递的岗位,做的项目

2.java抽象类与接口的区别

抽象类不能被实例化,只能被继承,主要目的时为其他类提供一个通用的接口和部分实现,它可以包含抽象方法和普通具体方法,

3.抽象类能否实例化

不能被实例化,被子类继承后是由实现所有的抽象方法才能实例化

4.在项目中用的抽象类偏多还是接口偏多、

        接口的使用要多于抽象类,因为类只能单继承,接口可以多实现,因为springboot中所有的业务服务都是通过接口定义,再通过实现类注入

5.抽象类用的场景介绍一下

  • 业务层抽象:如健身卡秒杀、用户鉴权模块,通过接口定义服务(如SeckillServiceAuthService),便于实现类切换与单元测试。
  • 与 LangChain4j 对接:定义大语言模型服务接口(如LLMService),实现与不同模型(GPT、DeepSeek、Qwen)的解耦适配。
  • WebSocket 聊天模块:使用消息处理接口(如MessageHandler)统一定义群聊与私聊逻辑,方便扩展新类型。
  • 缓存策略封装:如热点缓存设计中,定义缓存接口CacheService,实现 Redis 操作细节与业务逻辑分离。

6.java中数据结构有哪些

7.数据的基本类型

8.引用类型,包装类型

9.是一个场景题,在查询数据库中的数据时,用的什么数据结构,一直没听懂

在查询数据库数据时,主要使用以下数据结构:

  1. 实体类(POJO):查询结果通过 MyBatis 映射为 Java 实体类(如UserVenueOrder),便于业务逻辑处理。

  2. List<T>:用于接收多条记录,如分页查询健身场馆列表、旅游行程推荐结果等。

  3. Map<String, Object>:用于处理动态查询结果或多表联合查询,字段不固定时便于存取。

这些结构配合 MyBatis 进行数据封装和传递,提升了开发效率与代码可读性。

在项目中主要使用了以下数据结构:

  1. HashMap / ConcurrentHashMap:用于存储用户会话、缓存热点数据等,支持高效的键值对查找。

  2. Set / Redis Set:在健身交流网中用于实现点赞去重、附近健身馆的地理位置检索。

  3. List / ArrayList:用于存储用户的打卡记录、消息列表等有序集合。

  4. 队列(Redis Stream):用于异步处理秒杀下单请求,提升系统吞吐量。

  5. HyperLogLog:用于健身交流网中的 UV 去重统计,节省内存。

  6. 向量数据结构(Embedding 向量):在旅游问答中结合向量检索用于语义搜索与RAG知识匹配。

这些数据结构根据业务场景选择,兼顾了性能和资源效率。

是的,项目中广泛使用了 MySQL 数据库,主要用于以下场景:

  1. 用户与权限管理:存储用户信息、登录凭证、角色权限等核心数据。

  2. 健身场馆与课程信息管理:健身交流网中,场馆、教练、器材等实体均存储于 MySQL,支持分页查询与多条件检索。

  3. 订单与秒杀记录:秒杀模块中,秒杀成功后的订单信息落库,确保事务一致性。

  4. 旅游行程与用户行为数据:驴友旅游网中用于存储用户生成的行程、酒店预订记录等结构化数据。

MySQL 作为主数据库,负责结构化数据的可靠存储与事务管理

10.将一个表更新到另外一张表,怎么写sql语句,用update

        可以使用 UPDATE ... JOIN 语句将一个表的数据更新到另一个表中。SQL 示例:

        UPDATE target_table t JOIN source_table s ON t.id = s.id SET         t.column1 = s.column1, t.column2 = s.column2;

11.问了ORM框架,也就是mybatis

12.问在mybatis中实现分页查询的逻辑是怎么样的

13.动态查询的逻辑是怎么样的

14.如何解决应用层面多节点session共享问题

15。JWT的组成部分

16.JWT如何保障用户登录的一致性问题,逻辑是怎么样的

17.对kafka有哪些了解

18。redis中还用过哪些数据结构

19.如何读取一个xml文件

20.说一些springboot和ssm

21.用过set集合吗,为什么要用set集合,以及那些场景中用了set集合,

22.除了set集合还是用过哪些数据结构?

23.数据库操作事务的逻辑

24.了解数据库索引吗,相应的实现原理

25.说一下捕捉异常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值