Java开发实习面试复盘(亚信科技)

  1. 简单介绍一下自己

  2. 除了Java还学过其他语言吗,你最熟悉的是什么

  3. 简单介绍一下你做过的项目

  4. 说一下Spring、SpringMVC、Spring Boot之间有什么区别

    Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架

    SpringMVC是一种web层mvc框架,用于替代servlet(处理|响应请求,获取表单参数,表单校验等,是一个MVC的开源框架,SpringMVC=struts2+spring,springMVC就相当于是Struts2加上Spring的整合。

    Springboot是一个微服务框架,延续了spring框架的核心思想IOC和AOP,简化了应用的开发和部署。Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置。提供了一堆依赖打包,并已经按照使用习惯解决了依赖问题--->习惯大于约定。

  5. 项目中用到了哪些中间件

    这里只说到了RabbitMQ,其实Nginx、ES、Redis、Docker、GIt这些,只要是系统软件和用户软件之间连接的软件都算

  6. 在项目中Redis和MySQL如何进行数据同步的,简单说一下增量同步

    方案一:

    读:读redis,没有数据就读MySQL,将MySQL数据保存到缓存中

    写:写MySQL,同时让redis缓存失效(删除key,过期)

    缺点:数据量巨大,更新频繁的数据写入无能为力。比如数量巨大,每个变跟状态又很频繁,这样很容易把数据宕机

    方案二:

    基于binlog使用mysql_udf_redis,将数据库中的数据同步到Redis

    缺点:mysql_udf_redis是有人实现的同步数据到Redis的功能,需要学习成本,第三方插件不稳定

    方案三:

    MQ队列同步,变更数据两份,一份给Redis消费,一份给MySQL消费

    方案四:

    后台定时任务,定时刷新Redis中信息到数据库

增量同步是指在数据同步中仅同步更新或新增的数据,而不包括已经同步过的数据。全量同步则是指将所有数据进行一次完整的同步,无论数据是否有更新或新增。

  1. 熟练使用Java8的Stream流操作集合并结合 Lambda表达式这点简单说一下

    Java 8引入了Stream API,它提供了一种新的处理集合数据的方式。Stream API支持函数式编程风格,可以让你以声明性的方式处理数据集合,而不是传统的命令式循环。结合Lambda表达式,可以让代码更加简洁、易读且功能强大。

  2. 什么是缓存击穿

    给某一个key设置了过期时间,当key过期的时候,恰好这时间点对key有大量的并发请求过来,这些并发的请求可能会瞬间把数据库压垮

  3. 什么是缓存雪崩

    同一时段大量的缓存key同时失效或者Redis宕机,导致大量请求到达数据库,带来巨大压力

  4. 期望薪资是多少

  5. 如果你到公司这边你会在北京租房还是在...

  6. 如果在公司到下班时间了,你的工作完成了70%,你会怎么做

  7. 到公司肯定会对业务环境这些不太熟悉,遇到这种情况你会怎么做

反问:

  1. 如果面试通过到公司会负责哪块的业务?
  2. 面试结果什么时候出来?
相关推荐
爬山算法3 分钟前
Hibernate(88)如何在负载测试中使用Hibernate?
java·后端·hibernate
自不量力的A同学7 分钟前
Solon AI v3.9 正式发布:全能 Skill 爆发
java·网络·人工智能
Liekkas Kono11 分钟前
RapidOCR Python 贡献指南
开发语言·python·rapidocr
张张努力变强18 分钟前
C++ STL string 类:常用接口 + auto + 范围 for全攻略,字符串操作效率拉满
开发语言·数据结构·c++·算法·stl
万岳科技系统开发19 分钟前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
xyq202420 分钟前
Matplotlib 绘图线
开发语言
独断万古他化22 分钟前
【Spring 原理】Bean 的作用域与生命周期
java·后端·spring
m0_6948455724 分钟前
tinylisp 是什么?超轻量 Lisp 解释器编译与运行教程
服务器·开发语言·云计算·github·lisp
*小海豚*28 分钟前
在linux服务器上DNS正常,但是java应用调用第三方解析域名报错
java·linux·服务器
春日见29 分钟前
如何创建一个PR
运维·开发语言·windows·git·docker·容器