Java面经学习1

贝壳找房Java后端实习一二面+HR面,面经分享一下! 前言 面试前的准备非常重要,但更重要的是平时工作的积累,问的问题很多是无法通过临时准备的,很多都是需要你不断去积累,才能有好的方案。 1面 40min ArrayList和LinkedList 线程安全的List(讲了copyonwriteList) 不用这种怎么保证安全?(syn,重入) 什么叫重入? 什么场景下会用到重入? 怎么学习的? 可重复读是什么? AB同时读取值为1,同时提交导致的数据失效?(业务层面锁,数据库层面的锁) 索引为什么快? 索引的使用有没有什么注意事项 where a = xx b 阅读详情

背景:

暑期实习招聘还没完全结束,有些提前批现在都已经开了,算法刷题的时候八股也要积累:)

源自:

  1. https://www.nowcoder.com/feed/main/detail/16cfeb34d1274fae8c226dfd1d3d7ca4
  2. https://www.nowcoder.com/discuss/619478954549813248

1.

一面(技术面):
怎么判断这个sql执行的好坏?
索引失效的场景?
mybatis的一个#和$的区别?
mybatis的缓存有了解吗?
mybatis的动态sql的几种写法,有什么优缺点?
线程池的一个流程?
redis的缓存三件套?
redis的基本数据类型?
1.怎么判断sql的好坏?

根据执行的性能,是否使用到了索引,避免全文搜索

2.索引失效的场景

使用通配符
不使用索引列查询
对索引列进行表达式操作
OR多个条件,索引不一定能同时用到

3.MyBatis的#和$的区别

#传递的参数是经过预编译之后的sql语句接受
$传递的参数直接拼接到sql,进行执行
所以#传递参数更安全,$可能会导致sql注入.
预编译:sql语句先进行分析编译,之后把占位符的参数绑定.

4.MyBatis的缓存

一级缓存:会话级别的缓存,如果有相同的sql,直接会从缓存中获取结果返回–默认开启
二级缓存:mapper级别缓存,同一个mapper接口得到的结果如果在缓存中直接返回–需要配置
会相应引起并发性问题:数据库数据更新
@CacheEvict 使缓存失效

5.MyBatis的动态sql有几种写法,有什么有缺点
  1. xml文件中写:与代码分离,清晰,但是需要额外配置.适合复杂sql
  2. 注解写:方便,适合简单sql,但是写动态sql可读性差
  3. 动态方法写:方便,适合简单sql
6.线程池的一个流程

创建线程池,指定核心线程数,最大线程数,任务队列,拒绝策略,非核心线程超时
创建一个任务,

  1. 如果线程池的线程数小于核心线程数,那么就直接开一个新线程执行任务.
  2. 如果核心线程数上限,那么就把任务放到等待任务队列中.
  3. 如果任务队列满了,那么就开新线程来执行任务.
  4. 如果线程数到达最大线程数,那么新任务就执行拒绝策略
  5. 如果线程数大于核心线程数,非核心线程空闲时间超过非核心线程超时之后就会被销毁
    线程执行完任务后回到线程池
7.redis的缓存三件套

缓存键
缓存值
缓存过期时间

8.redis的基本数据类型

String
Set
List
Hash:键值对
sorted Set : 通过添加score进行排序
bitmap
geospatial index : 地理空间索引

JVM
堆里面主要存放什么对象?存放什么东西
栈里面存放什么
“堆对象放多了会发生什么?
“那对象都放堆里,GC 很频繁对吧?一些特定场景下,对象存活时间很短,引用很少,可能会放在栈里……减少堆压力减少 GC”
“什么样的对象会放入老年代?”——年龄阈值 15;大对象。“别的情况?”——不知道了,查了下还有动态年龄判断和主动 GC - “为什么是 15?算了我一会问你,你也应该知道”——汗流浃背,只能想到以为是概率统计结论
“什么情况会发生 Full GC?”——Minor GC 还不够,老年代要满
“行,你 JVM 相关是在哪里学的?”——《深入理解 Java 虚拟机》,老圣经了。“那不应该看出来是这个结果吧哈哈?”——再次汗流浃背,说刚开始看还没看多少
“其实这里有三种情况,还有个空间分配的担保机制”——只能附和对对对;查了下主动调用也行,元空间不够也行
“G1 回收阶段什么时候 STW?”——除了并发标记以外都有
“CMS 有什么缺点?”——标记清除的内存碎片;浮动垃圾(应该还有个清除时并发 CPU 资源抢占,降低程序吞吐量)

Java 基础
“老生常谈,HashMap,在 1.7 会发生死循环,什么情况下发生?”——扩容、头插法、循环链表,细节忘了
“ConcurrentHashMap 1.7 怎么加锁的”——分段加锁,1.8 是锁链表头
“1.8 再说详细些,比如 put()”——CAS 或 synchronized。“……可以再看看源码,里面有4 个 if-else,可能还有数组初始化……”,又讲好多,学习了
“了解扩容原理吗?”——硬着头皮说了解过,硬扯 CopyOnWrite 搬石砸脚。“那我们不聊这个了,它支持多线程扩容你知道吗?……”然后认真跟我讲了扩容机制,根据 CPU 核数算出来合适线程数之类的(后来看源码确实是这样,之前真没注意),学到了
“synchronized 锁升级过程了解吗?”——说意向锁被 JDK 15 被废除了,所以基本上只剩轻量级升重量级了(想以此逃避细节拷打)
“锁标识存在哪里?”——Mark Word 对象头。“Mark Word 有多少位?”——32 位是吗?。“32 或 64,看操作系统”
“4 个 bit 能表示多少数字?”——2^4=16
"对象头里面有 4 位留给谁了你知道吗?"——?有点懵,确实没反应上来。“比如留给对象年龄,刚刚说的 15 就是这么来的”,牛蛙!记住了,确实也有印象对象头里有对象年龄 GC 用,这下串起来了,赞!然后又讲了讲对象头其他部分大概是什么
“线程池的非核心线程是什么时候创建的?”——设置可以创建;阻塞队列已满
“什么时候销毁?”——空闲时间超过存活时间 keepAliveTmie
“处理完任务队列满了的额外任务等待 keepAliveTime 就销毁吗?”——觉得应该继续处理队列中的任务,肯定了,然后又细讲了讲机制
“你还有哪块比较熟悉?”——最近也在看 MySQL 相关的东西 “OK 那就 MySQL”——大哥真洒脱随性真好啊!

MySQL
“MySQL 底层索引用的什么数据结构?”——B+树
“B+树和 b 树区别?”——老生常谈。“B+树叶子结点之间是什么数据结构?”——双向链表
“隔离级别的可重复读是什么意思?”——举例 AB 事务布拉布拉
“数据库这块还有哪比较熟?”——最近在看事务和锁。“锁是吧,行”
“用 SQL 实现一个死锁,举个例子”——大概描述就是 AB 事务锁资源顺序导致死锁
“具体 SQL 语句?”——select for update,结合 SQL 再具体描述了一下上面的过程(还好吸取了上次不会写SQL的经验教训,这些天看了看锁的SQL怎么实现,没有两次在同一个地方翻车就是进步就是win!)
30 min

算法
LC 426(会员题,或剑指 LCR 155 免费同题) 二叉搜索树转排序双向链表
看了看,有点怂,没做过,感觉左孩子右孩子遍历改起来会自己绕进去,于是换题(哎,菜还得多练)
LC 53 最大子数组和,看似 mid 实为 easy 的 dp,但是好久没做 dp 想着滑窗绕进去了……面试官提醒我考虑 dp,结果推状态转移方程还是考虑了滑窗的思想半天推不出来。面试官又提醒怎么考虑状态转移,我能听懂意思,也能写方程,但脑子里受滑窗影响觉得这个方程不对,然后又犹豫了会选择相信面试官直接敲代码,然后过了……我真傻,真的。甚至中途收集最大值我直接 return 了 dp 末尾,面试官又提醒我然后我才补上,巨尴尬
+15 min——45 min

反问
先问我“平常怎么学习的?”——网课、书、博客,后面打算研究源码(感觉以后不应该提课了,书+文档+博客+源码够够的了)
哪方面还要着重提高?——JVM 书看完;博客看全看详细;算法加强常见题得熟,没做过也得有思路
如果能去,技术栈准备?——实习生基础好就行,框架会用就行;基础扎实已经很耗费时间了,我们也没指望能一上来就深入框架源码(与牛友面经阿里上来就问看过 Spring 源码吗形成鲜明对比)
“对,还有一点,希望你回答问题时能更自信一些,经常用“可能”“或者”,让我感觉你对你的回答不自信,即使是对的。我们搞程序的肯定是要严谨一些”——确实有点代入生活习惯,不喜欢把话说满,觉得不确定就直接查,面试没法查(bushi);但是有时也确实是不太确定答案习惯性带个可能,确实对于面试来说不是个好习惯,受教了!
52 min 结束

2.

1.jvm
  1. 堆里存放什么对象:Java类对象,实例对象,数组,字符串对象,匿名对象,基元包装类对象
  2. 栈里存放什么对象:方法内局部变量,方法调用地址(栈帧)
  3. 什么样的对象会放到老年代:大对象,年龄超过阈值的对象,预置是jvm参数配置,每经历一次新生代GC年龄加一,最大15好像是因为对象头信息中保存对象年龄使用了4位
  4. 什么情况会fullgc:老年代空间不足,显式调用,系统空闲时间
  5. 空间分配的担保机制:当新生代存活下来的对象无法存放到survivor区域,那么就直接晋升到老年代,这会导致老年代满,导致fullgc
  6. 元空间满:在1.8之后元空间满不会触发fullgc,而是会触发专门的元空间gc
  7. G1的回收过程中什么会导致STW(stop the world),除了并发标记都会,初始标记->并发标记->最终标记->回收清理. 初始标记:记录根对象直接关联的初始对象. 并发标记遍历堆对象,标记所有存货对象.最终标记,标记并发标记中变化的对象.
  8. CMS的缺点:STW时间较长,空间碎片问题,浮动垃圾,cpu竞争,浮动垃圾:在并发标记和清除过程中产生的垃圾只有在下次垃圾回收才能回收.并发的标记会竞争走一部分程序的cpu
2.Java基础
  1. HashMap1.7可能会出现死循环的问题:多线程插入的时候,如果一个线程在进行扩容,另外一个线程在进行hash碰撞后的链表插入.可能会因为next指针指向已被移动到新map的元素,导致遍历不能正常结束
  2. concurrentHashMap:1.7之前是内部分多个segment,锁segment. 1.8之后使用synchronized,CAS,volatile完成的
  3. synchronized锁升级:无锁->偏向锁->轻量锁->重量锁:偏向锁:加上id,如果访问资源的线程id相同,则直接准入(可重入),如果不同线程产生了竞争,则升级为轻量锁.轻量锁线程如果没得到锁,会自旋等待.如果等待自旋超过一定次数,或者在等待中又有另外一个线程想要获取锁,则升级到重量级锁.重量级锁会用操作系统层面将线程阻塞,需要用户态和内核态切换,所以性能较差.
  4. 锁标识信息存放在markword中,markword根据操作系统不同,位64位或者32位
  5. 4bit可以表示16个数字
  6. 非核心线程处理完任务队列溢出的任务之后会继续协助处理任务
3.MySQL
  1. MySQL底层索引用的B+树实现
  2. b+树和b树的区别是什么:b树又称为b-树,b+树只有叶子节点存储data,其他节点存储key.b-树所有节点都存储data.遍历的时候是进行二分查找. b+树叶子节点之间通过双向链表相连,每个节点的大小较小,可以存放更多节点,查询效率稳定
  3. 隔离级别:读未提交,读已提交,可重复读,串行化
  4. SQL死锁:一个事务读A表id=1的值,更新B表id=1的值,另外一个读B表id=1的值,更新A表id=1的值
-- 下面的执行死锁不住,我不知道为什么,在8.0数据库里面尝试了很多种网上所说的sql,都没法形成死锁.
-- 先执行这一段,在sleep期间执行下面一段
BEGIN;
SELECT * FROM user WHERE id = 2 FOR UPDATE;
-- 等待一段时间,模拟会话1持有锁
SELECT SLEEP(100);
UPDATE user SET phone = '21' WHERE id = 3;
COMMIT;

-- 因为select要想update获取锁,但是上面sleep占有了锁
BEGIN;
SELECT * FROM user WHERE id = 3 FOR UPDATE;
UPDATE user SET phone = '32' WHERE id = 2;
COMMIT;
4.算法
  1. 二叉搜索树转化为双向链表
    核心思想:我自己写的代码思路是对的,也每a出来,因为没处理好tail和head的变量,报错null.
class Solution {
    Node head = null;
    Node tail = null;

    public Node treeToDoublyList(Node root) {
        if (root == null)
            return null;

        helper(root);

        // 连接首尾节点
        head.left = tail;
        tail.right = head;

        return head;
    }

    private void helper(Node node) {
        if (node == null)
            return;

        // 中序遍历
        helper(node.left);

        if (tail == null) {
            // 链表为空,当前节点为头尾节点
            head = node;
            tail = node;
        } else {
            // 连接当前节点到链表尾部
            tail.right = node;
            node.left = tail;
            tail = node;
        }

        helper(node.right);
    }
}
  1. 最大子数组和
    核心思想:比较简单的题,做了好多遍了
class Solution {
    public int maxSubArray(int[] nums) {
        int max = nums[0];
        // 如果和小于0了就置为1
        int[] dp = new int[nums.length+1];
        dp[0] = nums[0];
        for(int i = 1;  i < nums.length ; i ++){
            dp[i] = Math.max(dp[i-1],0) + nums[i];
            if(dp[i] > max){
                max = dp[i];
            }
        }
        return max;
    }
}
字节跳动 Java 岗一二三面全经过分享 正在上传…重新上传取消他参加面试前所用的一些资料我也全都拿过来了,可以无偿分享给需要的朋友,直接点击领取就可以!那话不多说,坐稳扶好,发车喽!一面二面连着一起,三面因为过了五一所以隔了很久,hr 面在三面后一天。... 阅读详情

相关推荐

uniapp 基于单选框多选框实现上拉触底多选/单选、回显

showPickerCheckbox弹层显示 label和value 类似下拉框的label和value一个意思 键和值。结果:可以传接口(接口只能post请求) 可以搜索 下面是结果图片展示 单选多选都可以。fieldValue回显传的值 传的是字符串 数组的话[1,2]转为1,2格式传入。mode是控制的单选还是多选 true为多选默认值 其余参数 单选多选一样。fieldName字段名 确定后会返回该字段名 根据字段名找对应的传入值。问题:在uniapp上 实现分页多选的操作。下面是组件的完整代码。

2301_76607997的博客 2936

Java基础学习05(面向对象)(1),2024年最新网易 面经

其它面试题(springboot、mybatis、并发、java中高级面试总结等)网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!法的定义,从而没有变量和方法的实现。

2401_84023579的博客 747

Silvaco Atlas入门指南——从零开始掌握半导体器件仿真

本文为Silvaco Atlas半导体器件仿真软件的入门指南,详细介绍了从零开始掌握该工具的核心流程。内容涵盖Atlas的基本概念、仿真流程、核心文件(输入、结构、输出文件)、交互式与批处理两种操作模式,并逐步演示了如何从定义网格、划分区域、设置电极到进行掺杂、选择物理模型并求解,最终获取和分析器件特性的完整步骤。旨在帮助微电子相关专业人员和工程师快速上手这一强大的“数字实验室”,提升半导体器件设计与研发效率。

weixin_29306317的博客 401

《java学习笔记》之IO流概述(1),java面试问底层原理不懂

PrintStream printStream = new PrintStream(new FileOutputStream(“C:\Users\A556U\JavaSE曹鹏\chapter23 IO流\src\caopeng\javase\test\blog”,true));fileWriter = new FileWriter(“C:\Users\A556U\JavaSE曹鹏\chapter23 IO流\src\caopeng\javase\test\temp”,true);

2401_84104809的博客 960

C# emgu.cv图像识别 从大图中寻找小图,判断存在图的相似度

这是2个问题,我采用emgu.cv来解决这个识别问题,这里需要在nuget中引用emgu。最近写了一个在一张图片中,截取一部分,通过机器判断截取图片是这张图片的。第一、通过小图去找判断是否存在大图中,第二、小图存在大图的什么位置。

一个专注于技术研究创新的程序员 2467

基于STM32的超声波流量计设计

本项目基于STM32微控制器设计了一种超声波流量计,采用时间差法测量液体或气体的流速,计算流量并通过显示屏实时显示,同时支持远程数据传输。本设计通过STM32微控制器实现了基于时间差法的超声波流量计,集成了超声波信号采集、流量计算、状态显示和远程通信功能。本系统需要实现超声波信号的实时采集与处理,计算流速和流量,并将数据通过OLED显示和无线模块上传。系统需具备高精度的时间测量能力和良好的抗干扰能力。通过计算超声波在顺流和逆流方向上的传播时间差,结合管道直径与流体特性,计算流速并进一步计算流量。

stm32d1219的博客 2347

java 枚举的学习和使用(1),2024年最新java面试问项目难点和怎么解决的

SPRING(“春天”),SUMMER(“夏天”),FALL(“秋天”),WINTER(“冬天”);实际上在第一行写枚举类实例的时候,默认是调用了构造器的,所以此处需要传入参数,因为没有显式申明无参构造器,只能调用有参数的构造器。构造器需定义成私有的,这样就不能在别处申明此类的对象了。枚举类通常应该设计成不可变类,它的Field不应该被改变,这样会更安全,而且代码更加简洁。所以我们将Field用private final修饰。

2401_84419009的博客 873

手把手教你解决Ubuntu 20.04虚拟机桥接模式下的网络问题:DHCP与静态IP配置全指南

本文详细解析了Ubuntu 20.04虚拟机在桥接模式下的网络配置问题,包括DHCP与静态IP的配置方法及常见故障排查技巧。通过深入讲解桥接模式原理和提供实战操作指南,帮助用户解决无法访问外网、ping不通等典型网络问题,实现虚拟机与物理网络的无缝连接。

weixin_29256771的博客 542

hive学习笔记之八:Sqoop(1),2024年最新2024年大厂Java面经

在面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂的资料及案例由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!大家看完有什么不懂的可以在下方留言讨论也可以关注。网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)一个人可以走的很快,但一群人才能走的更远!

2401_84436905的博客 1121

Autosar EcuM配置-初始化及下电执行函数-基于ETAS软件

Autosar EcuM学习笔记-上电初始化执行函数及下电前执行函数,本文介绍在EcuM中的配置及使用。

赞的博客 849

SAP AI Core 高阶能力实战参考

文章摘要:本文探讨了在企业SAP架构中整合GenAI技术的工程化实践,重点分析了SAP AI Core的高阶能力应用。作者指出,企业级AI应用需解决多轮对话管理、Git同步工作流、提示词治理等核心问题,而非简单接入大模型API。技术方案展示了如何通过SAP AI Core的orchestration service管理对话历史,利用GitOps实现AI资产版本控制,并强调prompt template在审计合规中的治理价值。全文以SAP技术栈(ABAP/RAP/Fiori)为背景,阐释了AI能力与企业核心系

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 103

jackson学习之十(终篇):springboot整合(配置类)(1),2024年Java面经分享

对于面试还是要好好准备的,尤其是有些问题还是很容易挖坑的,例如你为什么离开现在的公司(你当然不应该抱怨现在的公司有哪些不好的地方,更多的应该表明自己想要寻找更好的发展机会,自己的一些现实因素,比如对于我而言是现在应聘的公司离自己的家更近,又或者是自己工作到达了迷茫期,想跳出迷茫期等等)Java面试精选题、架构实战文档你的支持,我的动力;祝各位前程似锦,offer不断!网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

2301_82241962的博客 856

计算机视觉(角点检测)- 1 - Harris角点检测

计算机视觉(角点检测)-1.1 Harris角点检测学习前言 学习前言   今天更新一下计算机视觉的东西吧,哈哈哈o( ̄︶ ̄)o   关于角点检测呢,就是检测图像中角点的算法,常见的有四种常见的算法:Moravec角点检测算法、 Harris角点检测算法、Shi-Tomasi 算法、FAST角点检测算法,不过常用的就两种吧——Harris角点检测算法、Shi-Tomasi 算法(反正我基本上就只用到这两种,先着重介绍前面两种,后面再花世界介绍吧)(~ ̄▽ ̄)~ ...

qq_40374812的博客 1万+

研发4面真题解析(Java岗),操作系统学习篇,写给1-3年Java程序员的几点建议

如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。如果用多线程实现Master-Worker,主线程就是Master,其他线程就是Worker。多进程模式最大的优点就是稳定性高,因为一个子进程崩溃了,不会影响主进程和其他子进程。(当然主进程挂了所有进程就全挂了,但是Master进程只负责分配任务,挂掉的概率低)著名的Apache最早就是采用多进程模式。

2401_84103844的博客 997

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

5面阿里,终获offer

文末有word版本的【阿里面试题和答案】分享 在接触 Java 之前我接触的比较多的是硬件方面,用的比较多的语言就是C和C++。到了大三我才正式选择 Java 方向,到目前为止使用Java到现在大概有一年多的时间,所以Java算不上很好。刚开始投递的时候,实习刚辞职,也没准备笔试面试,很多东西都忘记了。所以,刚开始我并没有直接就投递阿里,毕竟心里还是有一点点小害怕的。于是,我就先投递了几个不算...

weixin_33694172的博客 89

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

字节跳动Java开发4面攻略:狠刷面试题库+扎实的技术知识+视频学习(1)

*我们在项目的过程中需要去根据我们业务的特点,我们用户的特点,比如说我们用户的各种特征,来去设计我们的这个项目,然后去达成我们的业务目标,在技术指标上面,我们需要去考虑我们整体系统的访问量,我们的QPS,我们的承载量,我们的这个底级底层存储的容量,以及我们后续未来半年到一年的时间,我们系统容量成长程度是不是需要提前准备扩容等等。比如说,我们的业务需要去提升用户的留存,然后去提升我们整体的用户体验等等,以及我们的系统在哪里遇到了瓶颈,如果不做可能会对我们的业务产生什么影响。其实,只有这样,你才能体会到,

weixin_45933550的博客 790

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

32天高效突击学习成功面进阿里定级P7(Java架构师),分享学习路线+学习笔记+面试真题。(1)

问题二十二:Mybatis 映射文件中,如果 A 标签通过 include 引用了 B 标签的内容,请问,B 标签能否定义在 A 标签的后面,还是说必须定义在 A 标签的前面?问题十一:表中有大字段 X(例如:text 类型),且字段 X 不会经常更新,以读为主,将该字段拆成子表的好处是什么?问题二十一:通常一个 Xml 映射文件,都会写一个 Dao 接口与之对应, Dao 的工作原理,是否可以重载?问题二十三:、Mybatis 的 Xml 映射文件中,不同的 Xml 映射文件,id 是否可以重复?

2401_84048832的博客 324

金九银十拿到五家大厂Java后端岗offer,最后选择字节跳动Java研发岗(附面经及学习笔记)(1)

大型分布式系统犹如一个生命,系统中各个服务犹如骨骼,其中的数据犹如血液,而Kafka犹如经络,串联整个系统。这份Kafka源码笔记通过大量的设计图展示、代码分析、示例分享,把Kafka的实现脉络展示在读者面前,帮助读者更好地研读Kafka代码。麻烦帮忙转发一下这篇文章+关注我本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取a犹如经络,串联整个系统。

a19815156的博客 734

双非本科进不了大厂?阿里技术四面+交叉面+HR面,成功拿到offer

前言 前两天,我收到了阿里巴巴的实习offer,从学长内推开始面试到拿到最后offer经历了4面技术、一面交叉面和一面HR面。经过了漫长的等待和几次几乎折磨的面试之后,终于拿到了实习offer。 自我介绍 本人来自西南某双非本科学校,该校学的专业是物联网工程。我的专业与Java开发关系不大,学校也只教过一些简单的编程课,其余的编程相关知识都是自己在课余时间在实验室学习和自学的。技术不是大牛,项目做得多但是大部分都是自己练手的小项目或者一些有意思的小项目,没有接触过真正意义上的大项目。平时没事的时候喜欢

m0_63437643的博客 300

渣本毕业,五面阿里:四轮技术面+HR一面已拿offer,分享面经总结

前言 拿到阿里实习offer,经历了5次面试,其中4轮技术面,1轮HR面试。在这里分享一下自己的面试经验和学习总结。希望能够帮助更多的小伙伴。 我本科毕业于中南大学信管专业,真正开始学习Java是在大三下学期,研究生就读北航的移动云计算专业。刚开始也是小白,也是一步步成长起来的。需要提的一点是,你将来是需要靠这个吃饭的,所以请对找工作保持十二分的热情,而且越早准备越好。 阿里一面 一面是在上午9点多接到支付宝的面试电话的,因为很期望能够尽快接到阿里的电话,所以非常兴奋。电话接通之后还是非常紧张的,毕

m0_49850953的博客 164

半年筛选 400+ 份简历后,Java 程序员简历这样写才更容易被约面

> 本文基于 CodeGuide 仓库中小傅哥的招聘筛选实战文章整理:以 20 年近 6 个月筛选 400+ 份研发简历、最终只有不到 100 份进入面试的一手数据为背景,拆解面试官筛选简历的真实视角、不同成长阶段(实习生 / 应届生 / 1~3 年 / 3~5 年 / 5~7 年)简历的侧重点与写法,并结合仓库内的《Java 面经手册》系列、实战项目文档,给出从简历包装到面试备战的一整套可落地方

gitblog_00678的博客 733

Java面经学习

Java面经学习汇总

javabbcc的博客 638

超全!2025年JAVA面经汇总

一开始问了一下项目,知道没有上线后就不感兴趣,直接开始拷打八股,于是就有了我从未见过的这次八股,由于这次八股的内容实在过于逆天,本人特地写下来供大家分享,也向各位求助一下这些题目。33.项目-你来思考下,你的项目里怎么引入GPT,除了GPT作为和用户的交互,能不能把核心代码逻辑直接交由LLM负责,你不需要咋写代码了,只保留数据存储层?过期时间怎么设计的?26.我们知道jdk提供了很多锁机制来保证并发安全,其中syn是一个用的最广泛的,那么,syn锁的是A.class的时候,这个时候锁的粒度是什么样的。

tangjieqing的博客 4902

5面阿里,终获offer(Java后端)

作者:ppxyn。本文来自读者投稿。该文已加入笔主的开源项目——JavaGuide(一份涵盖大部分Java程序员所需要掌握的核心知识的文档类项目),地址:https://github.com/Snailclimb/JavaGuide 。觉得不错的话,记得点个Star。 在接触 Java 之前我接触的比较多的是硬件方面,用的比较多的语言就是C和C++。到了大三我才正式选择 Java 方向,到目...

JavaGuide 7935

拿阿里Java岗offer真难:3技术面+2交叉面+1代码面+1HR面

背景介绍:项目是管理系统,本科211(非科班),硕士985(非科班)。 我面试的岗位:java工程师 部门:新零售事业群-业务平台事业部-交易流程组 非常感谢阿里给的机会,感谢遇到的每一位面试官,面试过程很有收获。 文末有个人JAVA的学习经验和个人总结和收集的Java资源库,写的比较简单,仅仅是个人的一点经验,仅供大家参考。 阿里一面技术面 Spring bean加载,实例化的过程 如果给你一个map,里面有很多很多对象,那么这个map存放在哪 说一下CMS垃圾回收器 你项目里用的什么数

Java0258的博客 478

Spring AI + GPT-5.5 + Ollama 配置教程:Base URL、超时与流式调用

由于不同 Spring AI、Spring Boot 小版本之间仍可能存在差异,创建项目时应检查 Spring Initializr、Spring AI BOM 和官方兼容矩阵,不要直接复制旧教程中的 Starter 名称和版本号。多人项目最好隔离不同客户端,并在脱敏前提下记录最终 URL、状态码、请求耗时、请求 ID 和模型 ID。Spring AI 接入模型 API,至少要同时确认 Starter、Base URL、请求路径、API Key、模型 ID、连接超时、读取超时和流式客户端这 8 项。

2601_95893075的博客 225
上一篇: 代码随想录35期Day38-Java(Day37休息)
下一篇: 代码随想录35期Day39-Java
Gohoy
博客等级 码龄4年 271粉丝 67原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值