首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客967470958号
门头沟学院 Java
发布于辽宁
关注
已关注
取消关注
@Wagtail:
恒生电子面经(一面)
一面 1.11 20min1、自我介绍2、介绍简历项目3、SpringBoot框架相关问题Q:有没有用过自定义注解?A:没有……(说了一些常用注解,如@TableId,@RequestMapping,@param,@return,@Override等)【查阅补充】注解本质是一个继承了Annotation 的特殊接口,其具体实现类是Java 运行时生成的动态代理类。而我们通过反射获取注解时,返回的是Java 运行时生成的动态代理对象。java.lang.annotation 提供了四种元注解(元注解,专门注解其他的注解): @Documented:指定被标注的注解会包含在javadoc中。 @Retention: 指定注解的生命周期(源码、class文件、运行时),其参考值见类的定义:java.lang.annotation.RetentionPolicy@Target:指定注解使用的目标范围(类、方法、字段等),其参考值见类的定义:java.lang.annotation.ElementType@Inherited:指定子类可以继承父类的注解,只能是类上的注解,方法和字段的注解不能继承。即如果父类上的注解是@Inherited修饰的就能被子类继承。(JDK1.8新增了两种注解)自定义注解自定义注解类编写的一些规则:Annotation 类型定义为@interface, 所有的Annotation 会自动继承java.lang.Annotation这一接口,并且不能再去继承别的类或是接口。参数成员只能用public 或默认(default) 这两个访问权修饰。参数成员只能用基本类型byte、short、char、int、long、float、double、boolean八种基本数据类型和String、Enum、Class、annotations等数据类型,以及这一些类型的数组。要获取类方法和字段的注解信息,必须通过Java的反射技术来获取 Annotation 对象。 Q:MyBatis-plus如何实现分页功能?A:用组件和SQL范围查询语句来返回数据。【查找资料及补充】1)导入Mybatis-plus的启动器2)配置分页拦截器@Configuration // 注解类为配置类@MapperScan("org.example.mapper") // 扫描Mapper接口包路径public class MyBatisConfig { @Bean // 把方法返回值对象mybatisPlusInterceptor注入spring容器 public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); // 向Mybatis过滤器链中添加分页拦截器 interceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return interceptor; }}4、分布式数据库相关问题Q:(举了之前西安做核酸时,健康码崩溃事件的例子)崩溃原因是什么?A:客户太多导致服务器崩溃Q:解决措施?A:采用分布式的服务器,降低每台服务器的压力【查找资料及补充】可以用负载均衡。负载均衡,是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,从而协同完成工作任务。负载均衡构建在原有网络结构之上,它提供了一种透明且廉价有效的方法扩展服务器和网络设备的带宽、加强网络数据处理能力、增加吞吐量、提高网络的可用性和灵活性。服务器崩溃的几种原因:第一:高并发流量或请求超过服务器承受力第二:磁盘空间不足第三:服务器超载第四:服务器遭到恶意攻击Q:分布式数据库如何保证数据的一致性?A:没答上来……【查找资料及补充】经典方案 - eBay 模式将需要分布式处理的任务通过消息日志的方式来异步执行。消息日志方案的核心是保证服务接口的幂等性。例:如果产生了一笔交易,需要在交易表增加记录,同时还要修改用户表的金额。这两个表属于不同的远程服务,所以就涉及到分布式事务一致性的问题。解决方法:将主要修改操作以及更新用户表的消息放在一个本地事务来完成。同时为了避免重复消费用户表消息带来的问题,达到多次重试的幂等性,增加一个更新记录表 updates_applied 来记录已经处理过的消息。在第一阶段,通过本地的数据库的事务保障,增加了 transaction 表及消息队列。在第二阶段,分别读出消息队列(但不删除),通过判断更新记录表 updates_applied 来检测相关记录是否被执行,未被执行的记录会修改 user 表,然后增加一条操作记录到 updates_applied,事务执行成功之后再删除队列。通过以上方法,达到了分布式系统的最终一致性。5、Java相关问题Q:线程池的概念A:说了线程池和JVM相关(联想到常量池)#(可能的)正确答案:线程池 用于管理线程/是一种多线程处理模式,可以(1)降低线程创建和销毁的开销,(2)提高响应速度,(3)方便管理Q:新建的线程放在哪里?A:没答上来……#(可能的)正确答案:线程私有空间:程序计数器,虚拟机栈,本地方法栈。线程共享空间: 堆、方法区。Q:线程池如果满了,会有什么后果?A:会阻塞,创建失败【查找资料及补充】线程的创建与销毁需要依赖操作系统,其代价是比较高昂的,频繁地创建与销毁线程对系统性能影响较大。出于线程管理的需要,线程池应运而生。线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理。当提交一个新任务,线程池的处理流程如下:判断线程池中核心线程数是否已达阈值corePoolSize,若否,则创建一个新核心线程执行任务若核心线程数已达阈值corePoolSize,判断阻塞队列workQueue是否已满,若未满,则将新任务添加进阻塞队列若满,再判断,线程池中线程数是否达到阈值maximumPoolSize,若否,则新建一个非核心线程执行任务。若达到阈值,则执行线程池饱和策略。当线程池的任务缓存队列已满 并且 线程池中的线程数目达到maximumPoolSize,如果还有任务到来,就会采取任务拒绝策略(线程池饱和策略)。拒绝策略分为以下几种:ThreadPoolExecutor.AbortPolicy:丢弃任务并抛出抛出RejectedExecutionException异常,默认策略ThreadPoolExecutor.DiscardPolicy:直接丢弃任务,不抛出异常ThreadPoolExecutor.DiscardOldestPolicy:抛弃下一个将要被执行的任务(队列最前面的任务),然后重新尝试执行任务(重复此过程)ThreadPoolExecutor.CallerRunsPolicy:由调用线程(主线程)处理该任务Q:用过哪些Java开发模式?A:代理模式,工厂模式 【查找资料及补充】设计模式分为三大类:一,创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。二,结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。三,行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 其实还有两类:并发型模式和线程池模式。反问环节工作中常用的技术有哪些?微服务技术、SpringCloud,dubbo(阿里开源的分布式RPC框架)中间件、消息中间件,消息队列MQRedis缓存数据库【更新】复试挂了
点赞 19
评论 10
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
04-24 23:19
门头沟学院 产品经理
找工作没人告诉你的大实话,少踩坑版
以前觉得找工作就是投简历、面试、等结果,后来才发现里面全是“隐藏规则”。分享几个我踩过坑才明白的事,希望能帮你省点时间:1️⃣ 简历不是越“好看”越好以前总想着把简历设计得高大上,后来才知道HR根本没时间看排版。他们只快速扫关键词:岗位JD里的词(比如“用户增长”“数据分析”),和你的成果数据(比如“3个月涨粉5W”)。✅ 建议:对着招聘要求改简历,对方写什么你就用什么词,别自创说法。2️⃣ 投简历也有“黄金时间”周一早上和周二下午投,HR邮箱还没被塞爆,更容易被看到。周末和周五下班前投,大概率石沉大海……(别问我怎么知道的)3️⃣ 面试时最怕“没...
牛客激励计划
找工作有哪些冷知识
点赞
评论
收藏
分享
04-27 16:59
蔚来_车端算法构架师(准入职员工)
蔚来内推-蔚来内推码
蔚来汽车一面面经+提问嵌入式相关的岗位 今天参加了尉来汽车一面,写一下面经 时间:1h 1.自我介绍:花了6分钟讲了项目和比赛 2.项目和实习复盘:花了半小时,提了很多问题,楼主问题很多,不过还是得到面试官的中肯的评价:学习能力很强,不过要补的内容也很多 3.手撕代码:很简单的题目,好像是lucky序列问题,10分钟写完了,不过一开始测试用例只通过10%,有点荒,就把思路和面试官讲了一遍,感觉是变量太大,应该定义long long类型,修改之后,重新提交,一直在运行中,面试官说可能是系统问题,让我反问一些问题,然后让我下线,他说他要写面评。 4.反问:今天会有二面吗? ...
点赞
评论
收藏
分享
04-12 13:06
字节跳动_后端开发实习生(实习员工)
终于等到你
可能要撕腾讯了,不知道会不会被拉黑😬
牛客583549203号:
腾讯还好,况且实习而已,实习生流动性很大,属于正常现象,记得和HR委婉解释
点赞
评论
收藏
分享
04-28 10:09
好莱坞大学院大学 C++
问个问题被阴阳怪气了
#游戏开发# #春招#
愤怒的潜伏者在开会:
你不攻击他,我可攻击你了
点赞
评论
收藏
分享
04-27 00:18
C++
拼多多 服务端 三面挂求助
bg top3本机械+美本cs双学位,大三,投的服务端研发暑期实习时间线 3.24投递, 4.9笔试(2.8/4) 4.11一面 拷打八股的很深入有些答得不好有些挺不错,然后算法提示了一下写完4.16二面 根据项目问了很多场景题,我感觉回答得中规中矩,算法提示一下写完4.21三面 很和善的主管上来就说不考算法,聊了二十几分钟项目就结束了然后一直等消息,刚才看官网应聘终止了,挺难受的因为暑假三月底投了不少实习只有pdd这个一直在推进,请教一下各位应聘终止还有复活的可能嘛
醉心的bug:
pdd应该是没有复活赛的
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
暑期后端高频问题汇总
7.4W
2
...
左手敲代码的程序员,不配拥有offer吗?
6.6W
3
...
想听实话吗,校招ssp聊聊大厂客户端
3.7W
4
...
北京到底有谁在啊?
8853
5
...
五一假期,弯道超车时间表
8819
6
...
后端简历上最值得写的项目
8664
7
...
美团/饿了么/京东 配送端面经
6313
8
...
五一别写你那破开源代码了
6265
9
...
五一准备刷完这些面试八股题!!
5859
10
...
拼多多服务端信息确认
5346
创作者周榜
更多
正在热议
更多
#
设计人如何选offer
#
97960次浏览
680人参与
#
找工作,行业重要还是岗位重要?
#
7054次浏览
88人参与
#
五一之后,实习真的很难找吗?
#
44748次浏览
314人参与
#
盲审过后你想做什么?
#
12396次浏览
110人参与
#
外包能不能当跳板?
#
22065次浏览
191人参与
#
领导秒批的请假话术
#
9727次浏览
74人参与
#
考研可以缓解求职焦虑吗
#
20657次浏览
244人参与
#
五一假期,你打算“躺”还是“卷”?
#
27110次浏览
409人参与
#
面试等了一周没回复,还有戏吗
#
115322次浏览
1072人参与
#
找工作前vs找工作后的心路变化
#
7141次浏览
64人参与
#
牛友们的论文几号送审
#
27170次浏览
623人参与
#
你喜欢工作还是上学
#
37406次浏览
409人参与
#
应届生薪资多少才合理?
#
3061次浏览
24人参与
#
写简历别走弯路
#
714203次浏览
7850人参与
#
如果有时光机,你最想去到哪个年纪?
#
43232次浏览
766人参与
#
如何缓解入职前的焦虑
#
171795次浏览
1267人参与
#
每人推荐一个小而美的高薪公司
#
72826次浏览
1357人参与
#
硬件人,你被哪些公司给挂了
#
46532次浏览
722人参与
#
如果不工作真的会快乐吗
#
101031次浏览
866人参与
#
大疆的机械笔试比去年难吗
#
69573次浏览
602人参与
牛客网
牛客企业服务