25年9月东华软件 Java开发实习生线上一面

#JAVA##JAVA面经##JAVA内推#

前端这块你平时有接触吗?了解多少?

“有系统接触:掌握HTML5/CSS3/ES6基础,能独立开发响应式页面;深入使用Vue2(含Vue Router、Vuex),了解React核心思想(组件化、Hooks)。日常通过MDN、Vue官方文档学习,关注前端工程化(Webpack/Vite)。虽主攻后端,但坚持‘懂前端才能设计好API’——例如理解Axios拦截器原理后,后端统一返回{code, data, msg}格式,大幅减少联调摩擦。近期正用Vue3+TypeScript重构个人博客,深化全栈协作认知。”

你项目里的前端页面是自己写的吗?用的什么技术?

“是的,校园二手平台前端由我独立开发:

  • 技术栈:Vue 2.6 + Element UI + Axios + Vue Router
  • 关键实现
    • 封装request.js:统一添加Token、处理401跳转登录
    • 路由守卫:根据用户角色动态生成侧边栏菜单(管理员可见‘审核中心’)
    • 性能优化:商品图片懒加载、搜索防抖(300ms)
  • 协作细节:用Swagger定义接口规范,联调前用Postman验证字段,避免‘前端等后端’。虽非专业前端,但这段经历让我深刻理解:后端开发者懂前端,是高效协作的隐形加速器。”

Linux用过吗?开发或部署时常用的命令能随手说几个吗?

“日常使用WSL2开发,项目部署在CentOS云服务器,高频命令分四类:
🔹 日志排查tail -f app.log | grep "ERROR"(实时追踪错误)、less +F app.log(大文件查看)
🔹 进程管理ps -ef | grep java(查进程)、kill -9 PID(强制终止)、top(监控CPU/内存)
🔹 文件操作scp local.jar user@server:/opt(上传文件)、find / -name "*.log" -mtime -1(查24小时内日志)
🔹 网络诊断netstat -tunlp | grep 8080(查端口占用)、curl http://localhost:8080/health(服务自检)
实战案例:曾通过journalctl -u app.service --since "5 minutes ago"快速定位服务启动失败原因(配置文件路径错误)。”

聊聊你项目里的权限控制流程

“采用 JWT + 拦截器 + 前端路由守卫 三层控制:
1️⃣ 登录认证:用户提交账号密码 → 后端校验 → 生成JWT(含userId、role、exp) → 返回前端存localStorage
2️⃣ 请求校验

  • 前端:Axios拦截器自动在Header加Authorization: Bearer {token}
  • 后端:自定义拦截器解析JWT → 验签/过期检查 → 将用户信息存ThreadLocal(避免重复解析)
    3️⃣ 权限判定
  • 接口层:@PreAuthorize("hasRole('ADMIN')")注解控制(基于Spring Security)
  • 前端:路由守卫根据user.role动态渲染菜单(如普通用户不显示‘商品审核’入口)
    安全加固:Token设置短有效期(2h)+ Redis存黑名单(应对强制下线),敏感操作加短信二次验证。”

面向对象三大特性,结合代码经历谈理解

封装:不是‘藏起来’,而是‘定义清晰边界’。
→ 例:Order实体中,setStatus()方法校验状态流转合法性(如‘已发货’不能回退‘待支付’),外部无法直接改status字段,避免业务逻辑散落。
继承:为复用而生,但慎用‘为继承而设计’。
→ 例:BaseResponse封装code/msg/data,所有Controller返回继承它;但业务类避免深层继承,改用组合(如订单含User对象而非继承User)。
多态:让系统拥有‘生长能力’。
→ 例:支付模块中,PaymentContextPaymentStrategy接口,运行时注入AlipayStrategy/WechatStrategy。新增银联支付?只需实现接口,零修改核心逻辑。
核心感悟:OOP本质是用代码表达业务语言,让修改成本最低、扩展成本趋近于零。”

分页查询一般怎么实现?后端

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

本专栏在精不在多,内容分为八股文、大厂真实面经,面试通过后将offer和面试题私发给我,可退还专栏的收益部分费用。欢迎大家共建专栏

全部评论
27届实习机会或看我住业 https://careers.pddglobalhr.com/campus/intern?t=4OmKPVeX9a
点赞 回复 分享
发布于 03-11 13:48 上海
接好运
点赞 回复 分享
发布于 03-07 12:56 广东
专栏目录https://www.nowcoder.com/share/jump/1772859327707
点赞 回复 分享
发布于 03-07 12:56 广东
本专栏在精不在多,内容分为八股文、大厂真实面经,面试通过后将offer和面试题私发给我,可退还专栏的收益部分费用。欢迎大家共建专栏。
点赞 回复 分享
发布于 03-06 15:50 广东

相关推荐

一、 个人背景与综合意向- 自我介绍:请进行简单的自我介绍。- 业务背景:该规则引擎主要应用于唯品会的哪些具体业务场景?- 团队情况:你所在组的整体开发团队规模是多少?纯后端开发人员有多少?- 实习时间:如果入职,什么时候可以开始实习?打算实习多长时间?二、 Java 基础(重点考察 HashMap)- 数据结构:请介绍一下 HashMap 内部的数据结构。- 设计原理:为什么 HashMap 要引入红黑树?这样设计的根本目的和好处是什么?- 底层支撑:为什么底层要基于数组加链表的形式来实现哈希表?数组的作用是什么?- 哈希计算:JDK 1.8 中,哈希函数是如何计算哈希值并确定元素在桶中位置的?(扰动函数的作用)- 并发安全:HashMap 是如何保证线程安全的?具体到 JDK 1.8,它是如何利用 CAS 和 synchronized 实现的?- 不安全场景:在多线程环境下使用普通的 HashMap 会出现哪些具体的并发安全问题?(例如:值覆盖、扩容死循环等)三、 Spring 框架- 核心机制:请解释一下 Spring 的循环依赖问题以及它是如何通过三级缓存解决的?- 缓存细节:每一级缓存分别存的是什么?为什么非要引入“三级缓存”而不能只用二级缓存?(涉及 Bean 生命周期与 AOP 适配)四、 项目深度挖掘(规则引擎)- 项目核心:请详细介绍一下你负责的规则引擎项目,包括你的角色和核心产出。- 难点与挑战:在该项目中,让你印象最深刻的技术难点或业务难点是什么?- 稳定性治理:你是如何实现规则的多版本快照和回滚功能的?- 数据库设计:为了兼容旧表并实现多版本功能,你在表结构上做了哪些具体修改?- 业务逻辑:当规则出现问题时,业务人员如何通过后台系统排查过去的执行情况?- **回调机制**:业务回调功能是如何设计的?为什么要做异步优化?- 可靠性考量:如果系统在回调过程中重启,线程池阻塞队列里的任务丢失了怎么办?如何保证数据一致性?- 性能优化:你是如何发现规则执行链路存在耗时问题的?具体的优化手段(核心与非核心链路拆分)是什么?- 系统指标:该系统的平均耗时(RT)和峰值 QPS 大约是多少?五、 工程能力与运维排查- 监控手段:你们是如何对线上规则的执行时间进行监控的?- 线上排查:如果线上出现问题,你的排查流程是什么?- 容器化知识:线上系统是容器化部署吗?你对 Docker 或 K8S 有多少了解?- 日志定位:在容器环境下,你如何查找和定位历史日志文件?
查看25道真题和解析
点赞 评论 收藏
分享
03-04 17:35
门头沟学院 Java
唉,这么惨的估计也就只有我了。缓缓了一个月,一直在整理自己的工作内容,继续找工作了。校招去的是国内最大的一家广告公司。考虑的原因是:父母在北京,年纪也比较大,我在边上可以照顾些。当时也有其他的offer,但都是非北京的offer。被裁的原因是:无法胜任当前岗位的要求。半年多来,主要是做后端的开发,涉及agent、视频剪辑开发业务。半年内,做了很多的业务,但是自己的okr的活都没有去干,因为业务上的开发实在太多,开发完一个,另一个产品就来找你了,基本上就没有休息的时候,也就是没有时间去干okr里面的事情。最后评绩效的时候就给了C,然后就转正失败。这个事情也和leader聊过,但是leader一直pua我,你的校招职级非常的高,你要主动承担起责任,要挑起大梁来,我当时就按照leader的要求,周末主动过来加班,把业务上的一些重点bug全部修复,业务进度也非常的快。和leader沟通的时候,业务上的事情的太多了,okr的事情一直没时间干,甚至牺牲周末的时间远程去coding,压力特别大。本身维护的这套服务里面历史遗留bug巨多,根本修复不完,qa不管三七二十一直接把bug扔过来,她认为测试错误就是错的,完全不看产品文档,实在呆不下去了。leader的目标是要拆分成微服务的形式,维护的服务有6个,有的时候看不过来。一个需求跨服务的至少3个起步,要求三天开发完成,两天联调,剩下三天给qa测试修bug。找一个好的leader,太难了。希望后面26届以及后面的学弟学妹们擦亮自己的眼睛,找到一份属于自己的理想的工作。
wxg第一韭菜王pr...:我是22届的,普通双非校招进wxg,现在已经三年了。说实话,在你的描述里,我也感觉看到了曾经的自己,腾讯的办公室斗争其实挺严重的,我以前总觉得wxg这种地方不会有,但实际上这些事情真的是无处不在。 我非常理解也同情你的遭遇,在背负着照顾父母的重担下,面对这种高强度的业务压力和最后的转正失败,肯定会觉得委屈和无力。这也是初入职场、特别是节奏极快的互联网大厂时,很多优秀同学都会踩到的坑。我不是马后炮什么,我只是觉得,从你的描述中,有很多事情是值得进行一些思考的,不论是这位北京的同学,还是看到其他的同学,希望大家在职场里多多学习和进步。 你的描述里,有些事情当时觉得没时间、没办法掌握,但实际上是可以主动求变的。首先,要意识到努力修Bug并不等同于交付价值。在职场中,Leader和OKR才是职场环境中评判价值的标准。当繁重的业务需求挤占了OKR进度时,最应该做的不是默默加班,而是向上管理,比如明确告诉Leader,如果继续修这些历史遗留Bug,微服务拆分就无法按时完成,这时候就能明确管理预期去让leader拍优先级 另外,职场老好人是很累的。面对产品插队需求和QA甩锅,需要建立清晰的边界和流程,其实是专业能力的体现。职场不是学校,老师会看到你的每一分付出而考核时只看最终的产出结果。以前我也跟你一样,产品急冲冲的告诉我这个东西很急但是我手上也有别的事情,我该怎么办呢?因为站在我这个角度,我很难量化到底哪个需求或者说哪个工作是更重要的。这个事情我也是吃了很多亏才总结出来的,核心就是要把自己变成资源管理者。说白了,面对需求插队不要直接答应,而是把需求跑给你的协调方,可能是你现在手头需求的产品,也可能是你的Leader,明确告诉他们:“你要这个需求,那我的OKR就会延期,哪个优先级更高?”。这是在逼他们为自己的时间负责。面对QA乱甩锅也是一样的,别掉进自证陷阱,直接定死提测准入标准,没复现步骤、没 Log?一律打回,用标准流程阻挡这些低级的影响。
点赞 评论 收藏
分享
评论
5
6
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务