1. https://ac.nowcoder.com/discuss/416358?type=2
    两个人一组,进去之后会给每个人问一个技术问题,还有就是会问两个非技术的问题两个人一起回答。我的技术问题是:Spring和Springboot有什么区别。非技术问题:如果留北京要不要户口?成绩怎么样?如果今天你被录取了,你觉得原因是什么?
    Spring家族,为Java开发提供了基础框架,提供开箱即用的模块。包括spring boot(Spring Boot是为了优化Spring配置流程推出的)、spring framework、spring cloud等。常说的Spring MVC只是spring framework 的特性之一。
    Spring 是一个“引擎”;Spring MVC 是基于Spring的一个 MVC 框架 ;Spring Boot 是基于Spring4的条件注册的一套快速开发整合包。
    ①Spring最初利用工厂模式(DI)和代理模式(AOP)解耦应用组件,被市场认可。
    ②于是按照这种模式出现了MVC框架(Spring MVC是基于 Servlet 的一个 MVC 框架,通过Dispatcher Servlet, ModelAndView 和 View Resolver,开发web应用变得很容易),用于web开发,解决的问题领域是网站应用程序或者服务开发——URL路由、Session、模板引擎、静态Web资源等等。
    ③之后又发现每次开发都写很多样板代码,为了简化开发流程,于是开发出了一些“懒人整合包”(starter),这套就是 Spring Boot,集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等)。
  2. 邮储银行-信息科技岗(成都分中心)
    https://ac.nowcoder.com/discuss/420075?type=2
    问了一下java的JVM叫另外个人先回答的,问我有什么补充的没。。。。
    第二个问题是说一下数据库的分区表
    然后跟我一起那个是个大佬。jvm虚拟机说了很多,我知道的补充的很少,后边就一直问他考研的事情和他在学校所在专业的编程能力排第几
    还问了我们拿了offer没,我一个没拿到。。。大佬拿了五六个吧,问他假如他们公司给他发了offer会来不。
    1)JVM虚拟机
    将字节码翻译成机器码。
    运行时的数据区域,JVM内存模型包括:程序计数器(线程私有内存区域,调度要执行的字节码,不会OutOfMemoryError)、虚拟机栈(描述的是 Java 方法执行的内存模型,线程私有,每个方法调用到执行完毕对应栈帧的入栈、出栈,栈帧用于存储局部变量表、操作数、动态连接、方法出口等信息)、本地方法栈(与虚拟机栈作用相同,为JVM使用到的本地方法服务)、堆(所有线程共享的内存区域,存放对象的实例,垃圾回收器进行管理)、方法区(所有线程共享的内存区域,存储已经被虚拟机加载的类信息、常量、静态变量,还包括常量池)
    虚拟机栈的栈帧存储:局部变量表(存储编译期可知的各种基本数据类型、对象引用、returnAddress类型)、操作数栈(存放JVM中定义的任意数据类型的值)、动态连接(每个栈帧都包含一个指向运行时常量池中该栈帧所属方法的引用,持有这个引用是为了支持方法调用过程中的动态连接。)、方法出口/方法返回地址(用于返回方法被调用的位置)。
    2)数据库的分区表
    如果一张表的数据量太大的话,查找数据就会变得很慢,这个时候我们可以利用mysql的分区功能,在物理上将这一张表对应的三个文件,分割成许多个小块。(是将一大表,根据一定条件,分割成若干个小表)
  3. 邮储金融科技创新部春招面经(有的三五分钟,有的七八分钟)
    https://www.nowcoder.com/discuss/420164?type=post&order=time&pos=&page=1&channel=-1&source_id=search_post_nctrack&subType=2
    自我介绍+中意的行业+国外读书项目+国外实习+为什么没秋招,无技术内容。
  4. 邮储金融科技部门面经
    https://www.nowcoder.com/discuss/419951?type=post&order=time&pos=&page=1&channel=-1&source_id=search_post_nctrack&subType=2
    自我介绍+对邮储的理解+对部门的理解+职业规划
    项目介绍
    能承受多大的工作压力(我说希望是阶段性的压力,然后面试官说他们可能一个月都要加班到12点,我赶紧找补说自己可以承受的)
    职业规划细讲( 我说3-5年做小领导,面试官说我们要求1-2年做小领导,我又赶紧找补说能更快成长自然更好)
    你的实习跟邮储工作的关系,来部门可以做什么
    1)对邮储银行的理解
    邮储银行2007年挂牌成立,是全国城乡网点面最广、交易金额最多的个人金融服务网络,PSBC; 英文全称为:POSTAL SAVINGS BANK OF CHINA。排行第五位的商业银行,有国家扶持,这里能让自己学到更多的知识,想在这个大平台发展。
    1)对邮储银行的理解

2)对部门的理解

3)你的实习跟邮储工作的关系,来部门可以做什么
实习偏向测试方向,课程偏向开发方向,结合下来可以更好地进行软件测试。
5.邮储银行(C++岗位)
https://www.nowcoder.com/discuss/348744?type=post&order=time&pos=&page=1&channel=-1&source_id=search_post_nctrack&subType=2
一面
自我介绍
项目,算法框架,是否可以用规则实现,不会Python吗
实习经历
没户口能接受吗
提问
二面半结构
自我介绍
依次回答:电影哪吒影响最深的三点(可能大家都有点紧张,只有我一个人说到了我命由我不由天这一点,这难道不是重点么)、个人的职场优势
1)项目介绍
2)实习经历
6. 复盘今天惨不忍睹的邮储数据中心一面面经
https://www.nowcoder.com/discuss/273688?type=post&order=time&pos=&page=1&channel=-1&source_id=search_post_nctrack&subType=2
是否参加过团队项目,承担什么定位?
接下来被问到团队遇到什么困难,怎么解决的,balabala
询问爱好。美食,音乐
被问到会什么技术(我傻了),我愣了半分钟,不知道说啥,就c++,matlab,python了,不晓得这三算不算技术。
7.邮储银行信息科技部
https://www.nowcoder.com/discuss/83653?type=post&order=time&pos=&page=5&channel=-1&source_id=search_post_nctrack&subType=2
面试是一轮技术面和一轮HR面。技术面也是以介绍项目和围绕项目的问题为主,还问了投过哪些公司,未来的职业规划等等。HR面是群面,不是小组讨论,而是节约时间的多人进去一个一个问,问了我为什么选择邮储,在银行受到互联网金融较大冲击的情况下为什么还会选择银行,给专业能力、交往能力、领导能力排个序等等。最后收到了OFFER。
8.邮储银行-实习
https://www.nowcoder.com/discuss/593086?type=post&order=time&pos=&page=2&channel=-1&source_id=search_post_nctrack&subType=2
4.24 10:30-10:40 某国企 腾讯视频面
1)自我介绍:包括学习成绩、竞赛获奖、项目经历、邮储认识、职业规划 1分钟之内
2)知道Java的序列化吗?什么时候用到序列化?
序列化用在持久化、深拷贝和网络传输
你的方向是图像处理和后台开发,是一直做这个吗?
3)你学校是北京的,为什么报的是苏州的软研?
4)说一下线程池的一些的概念和用法?
说了核心线程、堵塞队列、最大线程之间的执行关系
核心线程数是否满,未满创建新的线程,运行结束后保存在线程池
核心线程数满了,放入拥塞队列,队列未满则加入排队
队列满了,线程数小于最大线程数,则创建线程执行,如果都满了拒绝策略。
5)知道Netty吗?Netty怎么解决粘包拆包的问题?
惊呆了,我也就看了一点Netty的粘包、心跳、pipeline
4种 长度域 固定长度 分隔符 换行符
常用基于长度域LengthFieldBasedFrameDecoder 指定帧协议中的字段偏移和字段长度
order by 和 group by 执行顺序?
写、执行,都是先group by,再order by
总结
9点半进入待考间,等待着叫号、验证身份证和学生证、检查正装
两个人同时进入面试房间
面试房间一个主持人,一些记录人员和面试官
面试时间一组只有10分钟,所以要尽量的突出自我
面试官问什么,你就答什么,不要和互联网一样发散拓展
面试官基本不会太看你简历上的项目等内容,相关问题可以提一下

9.邮储银行
https://www.nowcoder.com/discuss/362608?type=post&order=time&pos=&page=1&channel=-1&source_id=search_post_nctrack&subType=2
1.笔试2.一面
面试形式是两个人一组,有四个面试官,进入位置后先进行自我介绍,然后会有面试官依次对你们提问,我被问到的技术问题我记得的就以下几个,你平时主要用什么语言做开发?你使用过什么框架?c语言中的引用和指针的区别?然后还有一些非技术问题?目前有什么offer(一面已经9月22号了,不差的话应该都有offer了,所以会问),然后就说由于时间关系,面试结束,也没给个提问的环节什么的。
3.二面
一面后一周后左右,收到复试通知,复试基本就是hr面试了,面试形式是4个面试官,3个人一组,一共十分钟,我们当时是严格卡时间的,进去先每个人介绍一下自己,限时一分钟,面试官定了时的,讲不完也就算了,然后问了两个问题,一是为什么选择邮储,二是怎么看待程序员是生产力这句话,然后对自己的表现打分,一共十分钟结束。
结果:收到offer
10.邮储银行面试经验100个
https://wenku.baidu.com/view/db038479a617866fb84ae45c3b3567ec102ddc6a.html
1)什么是soap?
SOAP( Simple Object Access Protocol ,简单对象访问协议)是基于XML的协议,用于在分散或分布式环境中,与Web Service交换信息。
2)什么是VLAN?
(Virtual Local Area Network,虚拟局域网)将局域网LAN从逻辑上划分成一个个网段,实现虚拟工作组的数据交换技术。=多个逻辑的交换机
3)什么是WLAN?
(Wireless Local Area Network,无线局域网)
4)数据库事务的四点性质
ACID,原子性(Atomicity)事务不可拆分,要么全部操作成功,要么全部失败回滚,一致性(Consistency)从一个一致性状态,到另一个,转账,一开始2000,转完了综合还是2000,隔离性(Isolation)多个并发事务时间隔离,避免数据串扰,持久性(Durability)对数据库的更改要是永久性的,故障时也不会丢失事务的操作。
之前总结里面MySQL的ACID
5)数据库管理系统的意义
DBMS用于建立、使用、维护数据库。保证数据库的安全性、完整性。
6)中间件定义,列举三种中间件产品
用于数据分离的系统间的通信。
第一类,远程服务,阿里的Dubbo
第二类,各种MQ,应用之间的消息传递、解耦、异步,RabbitMQ、RocketMQ、Kafka
第三类,数据访问,JDBC连接数据库。
7)软件开发流程
需求分析(根据需求列大功能模块,细分小功能模块)、设计(基本处理流程,组织结构,模块划分,功能分配,接口设计,数据结构,错误处理等,详细设计中涉及主要算法、类的调用关系、数据结构、能够根据详细设计进行编码)、编码、测试、软件交付、验收、后续维护。
8)数据库如何提高查找效率?
合理使用索引、避免或者简化排序、避免复杂的正则表达式、避免顺序存取。
9)Java类、接口的继承问题。
只能继承一个类,可以实现多个接口

自我介绍:
我是2021届1月的应届毕业生,专业是仪器仪表工程。
①学习较为努力,在校期间认真学习专业知识,本科和研究生期间的成绩均为专业排名第二。
②乐于协同配合,在校期间担任学生会的常务副主席职位,组织学生活动。
③抗压能力较强,硕士2.5年期间完成导师交付的3个项目,业余时间培养自己的兴趣爱好,作为压力的出口。
④有一定的软件开发经验,硕士期间其中两个项目偏向软件开发、算法设计,本科之后的实习是黑盒测试相关的,硕士期间也自学Java语言,通过课程学习Java开发的项目。

项目主要思路
①项目框架,Nginx既做反向代理,又做web服务。后端,Spring MVC做视图层,MyBatis做数据层。JSON传response的内容,没有传html页面。
②二级缓存怎么实现的
缓存的数据从MySQL中查询到之后,存入Redis和Guava Cache中进行缓存,下次读取时候优先查找Guava Cache的数据,之后再看Redis。
③RocketMQ异步扣减库存是怎么实现的
通过创建流水实现对扣减的判定,MySQL和Consumer之间同步。
④如何实现的削峰、限流

验证码(平滑流量1到N秒)、大闸(加个gate阈值,限制令牌数量)、限流器(Guava的RateLimiter的令牌桶算法)、队列(通过线程池ThreadPool提高缓存能力)
令牌桶算法,每秒产生固定数量的令牌,业务有高峰,但是有上限。

⑤如何压测的
JMETER看聚合报告,查看结果树。
对商品详情页是配置好IP、端口、请求数量即可
对用户下单按钮,得在网页端的console里面获取当前用户的token、form id,填写到请求中,之后再设置线程数进行测试。
⑥Spring的IoC和AOP
IoC是控制反转,可以将Bean注入给别人使用,
AOP是面向切面编程,多个Bean都要做相同的记日志操作时,可以通过AOP,加@Pointcut的方式,在@Before、@AfterThrowing、@AfterReturning、@After等位置,加入记日志的方法。

Java基础类题目
1.全局变量、局部变量
成员变量:类中定义的变量,有默认初始值,未被static修饰的,为实例变量(存储在对象所在堆内存),被static修饰的,为类变量(存在方法区中)。
局部变量:方法中定义的变量,没有默认初始值,存储与JVM栈内存中,作用结束即释放。
2.hashCode()、equals()的关系?
两个对象相等,他们的hashCode()一定相等,反之未必。
3.==和equals()区别?
==:基本数据类型,比较数值是否相等;引用数据类型,比较对象地址是否相同。
Object类的equals(),未重写时,默认比较内存地址;重写后判断对象是否相等。
4.引用数据类型
数组、类、接口等。
5.String、StringBuffer区别
String不可变类,创建后字符序列不变。
StringBuffer,字符序列可变的字符串,可以用过append()、insert()、setCharAt()等方法进行修改。可以最终用toString()方法将其转换为String对象。
6.StringBuffer、StringBuilder区别
StringBuffer线程安全,性能较差
7. 使用字符串时,new和""推荐使用哪种方式?
"hello" 和 new String("hello") 的区别
第一个会放到常量池管理;第二个除了放到常量池外,还会在堆里新建一个对象。