SSM是指Spring、Spring MVC和MyBatis三个框架的组合。它们分别负责不同的功能,一起构建一个完整的Java Web应用。
Spring:负责依赖注入(DI)和控制反转(IoC),实现各个组件之间的松耦合。
Spring MVC:负责处理用户请求,实现Model-View-Controller(MVC)模式的Web应用开发。
MyBatis:负责数据持久层的操作,实现对象关系映射(ORM),简化数据库操作。
通过SSM框架组合,可以快速地构建一个可扩展、高性能、易维护的Java Web应用。
中国联通java工程师面试题
请简要介绍一下你的Java项目经验。
应聘者:在校期间,我参与了一个基于SSM框架的仓库管理系统项目,负责后端开发。
面试官:谈谈你对Java多态的理解。
应聘者:Java多态指的是不同对象对同一方法的不同实现,它包括编译时多态和运行时多态。多态实现了代码的可扩展性和复用性。
面试强度比较大,题目比较简单。和互联网差不多。因为应届的身份,多为八股。
这是我最开始面的一个,经验不足,敬请谅解(现在已经倒背如流了)
中国联通java软件开发工程师面试题
说一下什么是反射?
没说出来,忘了
Java中的数据结构
给他说了一下集合里的 单列集合 List :Arraylist LinkList Vector Stack Set : Hashset Treest 双列集合Map:Hashtable Hashmap TreeMap
arraylist 是动态扩容的吗
是的,而且当前元素个数达到容量极限的时候会扩容至原来的 1.5 倍
hashmap 可以 put null进去吗
可以 ,但是put进去的null值是被视为不相等的(面完发现记错了,mysql里是不相等的,Java里是相等的)。现在意识到他想让我说二义性。
hashMap是线程安全吗
不是 安全的话要用concurrenthashmap
线程的生命周期
详细说了那四个阶段(新建-可运行-阻塞、等待、限时等待-死亡)
如何预防死锁
说了一下形成死锁的必要条件,然后解决:破坏不可抢占条件 破坏循环等待条件
Mysql中的锁介绍一下
说了latch: mutex rwlock lock:共享锁排他锁意向锁 record lock gaplock nextkeylock
隔离级别
说了四个隔离级别
springboot有哪些依赖注入方式?
我不会(只知道概念)
bean的生命周期
创建、使用、销毁,细分 实例化、初始化、注册Destruction回调、Bean的正常使用以及Bean的销毁
bean的循环依赖如何解决
三级缓存 解释了下
springboot可以热更新吗?有哪几种热更新的方式?
不会
Autowired和Resource的关系
byType byName顺序,作用域,支持方。说了下具体的
redis数据结构
缓存雪崩 穿透 ?没答的很好。刚开始说成击穿了,然后假装思考了一下说了穿透的定义,解决方法(加校验、存keynull、布隆过滤器,每个都展开说)。雪崩没让说就下一个了。
redis为什么是单线程?
忘记了,但是提到了它性能不吃CPU。
说说分布式锁
忘了,没记。
kafka的数据保存策略?
没见过,不知道咋说?只说了消息存储的五个 零拷贝、磁盘顺序写入、页缓存、系数索引、分区和副本。不知道对不对
gRPC优点?
只说了优点,说他很快,为什么快?gRPC 基于 HTTP/2,相比于 HTTP/1.x,HTTP/2 支持头部压缩、多路复用等特性,可以更有效地利用网络资源,减少延迟。
他问底层会吗?
不会,说只用了几个成熟的RPCs。
JVM调优有哪些方式?
不会。我说根据我见过的项目,JVM都是设定好的,完全没有给人调优的机会和空间,所以没有了解。
讲一下GC?
讲了回收原理,算法,如何识别垃圾-强软弱虚。
GC没有实际应用过还是单纯处于理论层面?
我说了我只改了堆内存大小,因为我做了一些调查了解到的只需要这么改。装了个b,说前两天看的得物和阿里的新技术优化了zookeepper的ZAB(我就看了个皮毛),说我看他们优化了ZAB算法,在GC上最后也只是设置了xms和xmx。
如何保持数据一致性?
回答了双写一致性,延迟双删和canal+rabbitMQ,只让说了延迟双删,没让说canal+rabbitMQ。说了操作方式,为啥删第一次,为啥删第二次,为啥不能只删一次。
Spring Cloud会吗?不会
反问环节,问分布式场景多吗,都哪些
答用的都是最新技术,springcloud之类的,没正面回答
卡壳了,感觉打的不是很好,没好意思问二面要准备啥,就寻求了下锐评:
面试官说我的简历没提现技术能力(我后来看了下国聘上的简历没有专业技能,技术栈一个没漏出来,如果有二面必须让hr给我更新简历)。
脑子转得快,不够深入底层。
面完感觉G了
一共三面,前两轮线上。第一轮一个面试官,第二轮与第三轮群面。问的技术,差不多就是八股文。,涉及到线程、IO、锁、集合、JVM、索引、隔离级别、事务底层等
面试官问的面试题:天津联通java开发面试题
8.INNODB的数据结构
9.多线程
多线程的构造方法
10.线程
Sychronized是如何实现的
11.Mybatis缓存 一级缓存和二级缓存
12.IO 有哪几种方式
13.什么是同步 什么是阻塞 同步和阻塞一样吗 有什么关系, 分别在什么情况下发生
14.数据库隔离级别,他们有什么关系
15.幻读是什么
16.Spring如何加事务,
17.事务注解的底层原理
此次面试主要是中国联通在学校的宣讲会,有很多地区的联通分公司都在,当时天津联通能现场发offer(直签的机会),我冲着这个现场发offer的机会就去投递了天津联通。
面试官问的面试题:天津联通软件开发工程师面试题
一上来面试官就看了看我的简历,问题也比较简单,主要如下:
你是哪里人?(南方的)
为什么想要从南方来到天津这么远?没想过在家附近吗?(我说喜欢大城市)
广东、湖南也有大城市呀,为什么不选择?(我喜欢北上广深(天津挨着北),但深和上消费太高了)
接受岗位调剂吗?(岗位可能要考试,没达到录取名额最后排名的会被调剂)
android软件开发工程师面试经验(石家庄) - 河北联通
2024-10-14 | 校园招聘
2024-06-26 | 校园招聘
2023-11-27 | 校园招聘
2023-09-19 | 校园招聘
2021-01-19 | 社会招聘
2023-05-06 | 校园招聘
2022-11-02 | 校园招聘
2023-04-26 | 校园招聘
2022-04-11 | 校园招聘
2023-04-11 | 校园招聘
2023-11-10 | 社会招聘
2023-10-23 | 校园招聘
2023-03-27 | 校园招聘
2023-03-17 | 校园招聘
2023-02-16 | 熟人/朋友/介绍
2023-02-01 | 校园招聘
最后更新时间:2024-10-14