自我介绍
面试官好,我是杭州师范大学软件工程专业的洪杰,期待能加入贵公司成为Java后端开发工程师。
在技术上,我熟练掌握 SpringBoot 和 MyBatis,有一定的前端经验,熟悉MySQL、Redis等常见数据库和缓存技术,并且能熟练使用多种工具进行开发。
我曾开发基于 SpringBoot 和 Vue 的校园点餐系统,负责订单管理、库存控制和权限管理,并使用 Redis 缓存、WebSocket 通知、SpringSecurity 认证 等技术优化系统性能。
在我的上一段实习经历中,我参与开发了一款医疗教育系统,主要负责组卷和考试功能的开发。期间,我通过Redis 缓存考试内容,避免数据丢失,并基于 ClosedXML 进行 Excel 批量导入/导出,同时使用 JWT + OAuth 2.0 进行权限控制,提高系统安全性。
一、技能特长
mysql索引
事务
锁
二、校园点餐系统
1.Redis缓存菜品内容,减少重复查询
按店铺ID和分类ID缓存菜品内容,查询时先判断redis是否存在菜品信息,没有查数据库
2.使⽤WebSocket实时通知商家,提醒处理订单
用户下单后通过WebSocket将订单号发送到商家端,前端监听 onmessage,在 UI 上显示消息
3.SpringSecurity实现登陆认证和权限控制
用户登录后生成JWT,发送请求后后端解析JWT,通过@PreAuthorize按角色信息限制访问的 API
4.使⽤Nginx实现静态资源部署
Nginx 在项目中主要用于 前端静态资源部署
5.使用SpringAop实现记录登录和操作日志
Spring AOP 通过 @Aspect 切面 + @Pointcut 切点 拦截指定的方法,定义了 @Log 注解,用它标记需要记录日志的方法,Spring AOP 会拦截所有带 @Log 的方法,在执行前后自动记录操作日志,不需要每个方法都手写 logger.info()。
6.使用SpringTask实现定时任务,管理订单和库存内容
使用@Scheduled(cron = “0 * * * * ? “),每1分钟检查未完成订单是否超时,超时取消订单
7.使用Nacos实现负载均衡
Nacos 用于服务注册和发现,目前我们的项目是单体架构,所以启动多个不同端口的后端实例,使用RestTemplate访问其他实例
三、艾地医教
sql,公倍数公约数算法,动态规划,spring依赖注入,aop,mybatis的#和$符号的用处,一些基础知识选择题
设计模式
java基础
sql
项目:代码具体怎么写搞懂
代码上有什么优势
注重代码格式,注释。
未来职业规划
wl:
string,stringbuildstringbuffer
wl:
hashmap,linkedhashmap,treemap
wl:
java虚拟机组成
wl:
线程run和start区别
wl:
几种异常类型,分别是什么
wl:
实现单例
wl:
递归1到200的乘法
wl:
springmvc工作原理
wl:
redis应用场景
wl:
springboot工作原理
Prompt工作流
springboot异步
判卷
你在上一家公司实习学到了什么
Spring,springmvc,springboot
springboot解决跨域
数据库查死锁


