JavaGuide

「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。准备 Java 面试,首选 JavaGuide!

  • 博客(228)
  • 资源 (9)
  • 收藏
  • 关注

原创 花了快2个月!Guide自己动手写了一个简单的RPC框架!

Github地址:https://github.com/Snailclimb/guide-rpc-framework (欢迎star,欢迎一起完善!共勉!)前言大概 2 个月前,我说过要利用业余时间写一个简单的 RPC 框架,今天(2020-06-05)总算将其开源出来,希望对小伙伴们有帮助。虽说 RPC 的原理实际不难,但是,自己在实现的过程中自己也遇到了很多问题。Guide-rpc-framework 目前只实现了 RPC 框架最基本的功能,一些可优化点都在下面提到了,有兴趣的小伙伴可以自行完.

2020-06-08 09:42:42 14896 14

原创 强烈推荐!15 个 Github 顶级 Java 教程类开源项目推荐!

B站在线观看地址:https://www.bilibili.com/video/av90155402 ,来个三连和关注啊!大家好,我是 Guide 哥!今天给大家推荐 15 个新手也能看懂的 Java 教程方向的开源项目。这些项目无论是对于你学习 Java 还是准备 Java 方向的面试都非常有帮助。正如我第一个要推荐的开源项目 JavaGuide 说的那样:开源项目在于大家的参与,这才使得它...

2020-02-21 10:41:22 33216 9

原创 良心推荐,我珍藏的一些Chrome插件

上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。Markdown HereMarkdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...

2020-01-10 17:51:19 106514 68

原创 硬核! 逛了4年Github ,一口气把我收藏的 Java 开源项目分享给你!

Awsome JavaGreat Java project on Github(Github 上非常棒的 Java 开源项目).English Version大家都知道 Github 是一个程序员福地,这里有各种厉害的开源框架、软件或者教程。这些东西对于我们学习和进步有着莫大的进步,所以我有了这个将 Github 上非常棒的 Java 开源项目整理下来的想法。我会按照几个维度对项目进行分类...

2019-12-09 13:20:16 30631 31

原创 面试官:“谈谈Spring中都用到了那些设计模式?”。

我自己总结的Java学习的系统知识点以及面试问题,已经开源,目前已经 41k+ Star。会一直完善下去,欢迎建议和指导,同时也欢迎Star: https://github.com/Snailclimb/JavaGuideJDK 中用到了那些设计模式?Spring 中用到了那些设计模式?这两个问题,在面试中比较常见。我在网上搜索了一下关于 Spring 中设计模式的讲解几乎都是千篇一律,而且......

2019-05-23 20:51:14 30740 16

原创 社招 Java 中厂面试记录,难度有点大!

社招一年半:上海海鼎信息和深圳小赢科技:总体难度还是有点大的,第二家公司拷打的问题非常非常多,一共 60 个问题,多少有点离谱儿。不过,面试体验很好,面试官会引导往哪个方向思考。

2025-03-30 14:03:59 347

原创 Java + LangChain 实战入门,开发大语言模型应用!

在本教程中,我们将详细探讨LangChain,一个用于开发基于语言模型的应用程序的框架。我们将首先了解语言模型的基础概念,这些知识将对本教程有所帮助。尽管 LangChain 主要提供 Python 和 JavaScript/TypeScript 版本,但也可以在 Java 中使用 LangChain。我们会讨论 LangChain 作为框架的构建模块,然后尝试在 Java 中进行实验。在本教程中,我们探讨了创建基于大型语言模型的应用程序的一些基本元素。

2025-03-27 07:31:00 1075

原创 Kafka 4.0 正式发布,彻底抛弃 Zookeeper,队列功能来袭!

在 Kafka 2.8 之后,引入了基于 Raft 协议的 KRaft 模式(Kafka Raft),不再依赖 Zookeeper,大大简化了 Kafka 的架构,让你可以以一种轻量级的、单进程的方式来使用 Kafka。只有需要调整的消费者和分区才会发生变更,未受影响的消费者可以继续正常工作(旧有的再均衡协议依赖于组范围内的同步屏障,所有消费者都需要参与,这会导致明显的“停顿”)。这次更新带来的改进优化非常多,不仅简化了 Kafka 的运维,还显著提升了性能,扩展了应用场景。Kafka 发布订阅模型。

2025-03-25 23:29:20 853

原创 JDK 24 来啦!解读一下新特性!

真快啊!Java 24 这两天已经正式发布啦!这是自 Java 21 以来的第三个非长期支持版本,和一样。下一个长期支持版是,预计今年 9 月份发布。Java 24 带来的新特性还是蛮多的,一共 24 个。Java 23 和 Java 23 都只有 12 个,Java 24的新特性相当于这两次的总和了。因此,这个版本还是非常有必要了解一下的。

2025-03-20 15:20:39 855

原创 武汉小米 Java 岗位一二面校招面经

小米 Java 岗位的面试难度并不大,问题也较为常规,主要以技术八股文为主,手撕算法题基本来自 Leetcode 上的常见题目,整体难度适中。下面,分享一篇武汉小米 Java 岗位的校招面经(一二面核心问题整理,附带详细参考答案),大家可以感受一下具体的面试难度。

2025-02-19 20:51:18 697

原创 Spring 项目接入 DeepSeek,分享两种超简单的方式!

你可以将 Spring AI 看作是一个适配器或者高层封装,用来帮你更方便地集成和使用不同的 AI 模型。它的核心目标是简化开发流程,降低使用多种 AI 服务时的复杂性,同时提升代码的可维护性和灵活性。Spring AI 从著名的 Python 项目(例如 LangChain 和 LlamaIndex)中汲取灵感,解决了 AI 集成中的核心挑战:将企业数据和 API 与 AI 模型连接起来。DeepSeek 作为一款卓越的国产 AI 模型,越来越多的公司考虑在自己的应用中集成。在运行时,你可以通过在。

2025-02-12 21:27:27 3022 1

原创 IDEA 接入 DeepSeek,太酷了!

与 CodeGPT、GitHub Copilot 等类似,它基于大语言模型(如 OpenAI 、DeepSeek 或其他模型),为开发者提供实时代码生成、问题解决、单元测试生成等功能。IDEA 右侧便可以看到 Continue 的图标,选择添加 DeepSeek 模型和 DeepSeek Coder,再填写 DeepSeek API Key。:由于一些特殊原因,目前 DeepSeek 官方提供的 API 稳定性非常差,我在测试的时候经常遇到无法使用的情况。(macOS),在窗口左侧的导航栏中选择。

2025-02-06 21:03:10 2125 2

原创 招银网路Java后端一面,难度有点大!

自我介绍一般是你和面试官的第一次面对面正式交流,换位思考一下,假如你是面试官的话,你想听到被你面试的人如何介绍自己呢?一定不是客套地说说自己喜欢编程、平时花了很多时间来学习、自己的兴趣爱好是打球吧?用简单的话说清楚自己主要的技术栈于擅长的领域;把重点放在自己在行的地方以及自己的优势之处;重点突出自己的能力比如自己的定位的 bug 的能力特别厉害;自我介绍并不需要死记硬背,记住要说的要点,面试的时候根据公司的情况临场发挥也是没问题的。

2025-01-02 12:53:34 1411

原创 美团后端暑期一面,本来收到感谢信,但又复活了!

今天来分享的是一位读者的美团暑期实习一面面经,主要是一些常规八股,难度还是有的,部分题目确实不太好回答。结果,过几天又收到复活赛邀请,复活赛倒是打赢了,已oc。

2024-12-26 12:32:10 757

原创 快手后端面试,被面试官秒挂了!

很久没有分享凉经了,今天来分享一位西北工业大学的读者面试快手,一面就直接秒挂的面经。快手一面主要会问一些基础问题,也就是比较简单且容易准备的常规八股,通常不会问项目或者问的比较少。到了二面,会开始问项目,各种问题也挖掘的更深一些。很多同学觉得这种基础问题的考查意义不大,实际上还是很有意义的,这种基础性的知识在日常开发中也会需要经常用到。例如,线程池这块的拒绝策略、核心参数配置什么的,如果你不了解,实际项目中使用线程池可能就用的不是很明白,容易出现问题。

2024-12-23 19:17:53 670

原创 Nacos 3.0 考虑升级到 Spring Boot 3 + JDK 17 了!

虽然现在大部分人还是:“你升任你升我用 Java8”,但现实是很多新项目已经不得不升级到 JDK 17,毕竟 SpringBoot3.0 最低支持版本就是 JDK17。由于 Spring Boot 2 的维护已于近期停止,Nacos 团队考虑升级到 Spring Boot 3 + JDK 17,目前正在征求意见和建议。对于一些追求“稳定”的开发者来说,可能对新版本不太感兴趣,只希望继续使用现有的版本。最后,Java8~23的新特性详细解读可以在。上找到,感兴趣的可以去我的网站上看看。

2024-12-18 10:28:44 763 1

原创 蔚来 Java 后端实习终于 OC 了,分享一下面经!

用简单的话说清楚自己主要的技术栈于擅长的领域,例如 Java 后端开发、分布式系统开发;把重点放在自己的优势上,重点突出自己的能力比如自己的定位的 bug 的能力特别厉害;避免避实就虚,适当举例体现自己的能力,例如过往的比赛经历、实习经历;自我介绍的时间不宜过长,一般是 1~2 分钟之间。你对项目基本情况(比如项目背景、核心功能)以及整体设计(比如技术栈、系统架构)的了解(面试官可能会让你画系统的架构图、让你讲解某个模块或功能的数据库表设计)你在这个项目中你担任了什么角色?负责了什么?

2024-12-14 17:02:46 117

原创 贝壳后端面试,拿下了!

用简单的话说清楚自己主要的技术栈于擅长的领域,例如 Java 后端开发、分布式系统开发;把重点放在自己的优势上,重点突出自己的能力比如自己的定位的 bug 的能力特别厉害;避免避实就虚,适当举例体现自己的能力,例如过往的比赛经历、实习经历;自我介绍的时间不宜过长,一般是 1~2 分钟之间。如果你有实习经历的话,自我介绍之后,第二个问题一般就是聊你的实习经历。面试之前,一定要提前准备好对应的话术,突出介绍自己实习期间的贡献。

2024-11-29 15:54:44 722

原创 美团 Java 后端核心本地商业终于 OC 了,分享一下面经!

今年美团的 HC 真多啊,不少读者都拿到了今年的美团校招 offer。今天来分享一位读者面试美团的经验,大家感受一下难度如何。下面是正文。:本硕 211:第一个是仿牛客的一个项目,第二个是优化后的黑马点评。

2024-11-06 08:29:49 956

原创 面试官:谈谈你对 IoC 和 AOP 的理解!

IoC (Inversion of Control )即控制反转/反转控制。它是一种思想不是一个技术实现。描述的是:Java 开发领域对象的创建以及管理的问题。例如:现有类 A 依赖于类 B传统的开发方式:往往是在类 A 中手动通过 new 关键字来 new 一个 B 的对象出来使用 IoC 思想的开发方式:不通过 new 关键字来创建对象,而是通过 IoC 容器(Spring 框架) 来帮助我们实例化对象。我们需要哪个对象,直接从 IoC 容器里面去取即可。

2024-09-25 16:50:23 364

原创 美团二面拷打:MySQL中 SQL 语句的执行流程?

连接器主要和身份认证和权限相关的功能相关,就好比一个级别很高的门卫一样。主要负责用户登录数据库,进行用户的身份认证,包括校验账户密码,权限等操作,如果用户账户密码已通过,连接器会到权限表中查询该用户的所有权限,之后在这个连接里的权限逻辑判断都是会依赖此时读取到的权限数据,也就是说,后续只要这个连接不断开,即使管理员修改了该用户的权限,该用户也是不受影响的。

2024-09-22 09:43:02 652

原创 5年经验社招后端面试经历分享

大家好,本人 2018 年毕业于一所普通 211 学校,专业是软件工程,学历背景还说的过去,至少大部分情况下不会给自己拖后腿。我于今年 1 月份在百度毕业,先后参加过腾讯、滴滴、字节、京东、快手、美团、蚂蚁等大中厂的面试。offer 阶段是在快手、滴滴和京东之间选择了京东。薪资的话,总包是 51w。参加了很多次面试,总结了一些个人对于面试的见解,希望能给大家以后的面试带来些许帮助。本人平时注重总结一些理论知识,所以遇到毕业的情况也不太慌,也建议大家平时要卷安思危以应对未来的多种可能性的发生。

2024-08-30 20:19:27 1817

原创 熬了快两个月,终于拿到了淘天后端offer!

1. 实习/项目经历 > 算法 > 学历 > Java八股文。项目是被拷打最多的,然后算法真的很重要,笔试成绩不好直接排序到很久才有机会面试,大厂喜欢卡学历,八股多花时间总能背下来,但前面的三项不好就一点机会没有了。2. 实习没必要投太早,有一个靠谱的内推人真的很重要。实习投的早,可能第一场笔试会比较难。有一个靠谱的内推人可以帮你查进度,催hr加快进度,没人帮忙查真的很折磨3. 暑期实习是一个持久战,非常折磨心态。

2024-05-15 17:15:15 712

原创 面试官:为什么忘记密码要重置而不是告诉你原密码?

如果明文存储的话,风险太大,且不说数据库的数据有被盗的风险,如果被服务端的相关人员特别是有数据库权限的恶意利用,那将是不可预估的风险。当你输入密码登录之后,服务端会先把你的密码对应的盐取出,然后再去执行一遍获取哈希值的过程。盐(Salt)在密码学中,是指通过在密码任意固定位置插入特定的字符串,让哈希后的结果和使用原始密码的哈希结果不相符,这种过程称之为“加盐”。哈希算法的是不可逆的,你无法通过哈希之后的值再得到原值,这样的话,服务端也不知道你的原密码到底是什么,自然没办法告诉你原密码是什么。

2024-04-16 11:01:15 861

原创 京东后端实习一面(附详解),秒挂!

简单来说,引用拷贝就是两个不同的引用指向同一个对象。

2024-04-03 15:31:39 1468

原创 OPPO后端二面,凉了!

/... }//...String保存字符串的数组被final修饰且为私有的,并且String类没有提供/暴露修改这个字符串的方法。String类被final修饰导致其不能被继承,进而避免了子类破坏String不可变。在 Java 9 之后,String与的实现改用byte数组存储字符串。// @Stable 注解表示变量最多被修改一次,称为“稳定的”。// @Stable 注解表示变量最多被修改一次,称为“稳定的”。@Stable。

2024-03-13 21:39:46 1178

原创 Redis 八种常用数据类型详解

String 是 Redis 中最简单同时也是最常用的一个数据类型。String 是一种二进制安全的数据类型,可以用来存储任何类型的数据比如字符串、整数、浮点数、图片(图片的 base64 编码或者解码或者图片的路径)、序列化后的对象。虽然 Redis 是用 C 语言写的,但是 Redis 并没有使用 C 的字符串表示,而是自己构建了一种简单动态字符串SDS。

2024-03-13 21:38:35 1067

原创 焦虑秋招选手,成功拿到了美团、百度、阿里等大厂offer!

面经就先写这几家吧,其他的几家也跟这其实差不多,项目+八股,所以简历上所有东西一定要全部弄明白,面试官问的太难也别害怕,落落大方点,太难了不会就是不会,可能他们一开始就没想要你,就算舔的通过了,薪资啥的也不太行,心里别太有负担,适合你的公司肯定会出现。其实给我最大的感受就是,在时代浪潮面前,我们每个人的努力显得渺小无力,但个人的努力和知识积累,会让你在当前时代下有较好选择。最后呢,回想起这整整一年的经历,感觉挺不易,就像人生的道路一样,哪有一帆风顺,但好在自己一直没有放弃,一直在努力。

2024-02-29 15:51:16 902

原创 美团面试:Redis 除了缓存还能做什么?可以做消息队列吗?

这是一道面试中常见的 Redis 基础面试题,主要考察求职者对于 Redis 应用场景的了解。即使不准备面试也建议看看,实际开发中也能够用到。

2023-11-02 20:19:04 1618

原创 JDK21的虚拟线程是什么?和平台线程什么关系?

关于平台线程和系统内核线程的对应关系多提一点:在 Windows 和 Linux 等主流操作系统中,Java 线程采用的是一对一的线程模型,也就是一个平台线程对应一个系统内核线程。JVM 调度程序通过平台线程(载体线程)来管理虚拟线程,一个平台线程可以在不同的时间执行不同的虚拟线程(多个虚拟线程挂载在一个平台线程上),当虚拟线程被阻塞或等待时,平台线程可以切换到执行另一个虚拟线程。许多虚拟线程共享同一个操作系统线程,虚拟线程的数量可以远大于操作系统线程的数量。线程类,这样可以平滑的过渡到虚拟线程的使用。

2023-10-17 16:15:40 6819

原创 美团面试拷打:ConcurrentHashMap 为何不能插入 null?HashMap 为何可以?

周末的时候,有一位小伙伴提了一些关于的问题,都是他最近面试遇到的。原提问如下(星球原贴地址:https://t.zsxq.com/11jcuezQs ):下面我会以此提供这两个问题的详细答案,希望对你有帮助。

2023-08-28 21:07:51 2129

原创 Redis持久化机制 RDB、AOF、混合持久化详解!如何选择?| JavaGuide

Redis 可以通过创建快照来获得存储在内存里面的数据在某个时间点上的副本。Redis 创建快照之后,可以对快照进行备份,可以将快照复制到其他服务器从而创建具有相同数据的服务器副本(Redis 主从结构,主要用来提高 Redis 性能),还可以将快照留在原地以便重启服务器的时候使用。快照持久化是 Redis 默认采用的持久化方式,在redis.confsave 900 1 # 在 900 秒(15 分钟) 之后,如果至少有 1 个key发生变化,Redis就会自动触发bgsave命令创建快照。

2023-07-27 19:31:48 1255

原创 Java 成员变量与局部变量有什么区别?

(Github 标星 134k star!「Java学习 + 面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识)

2023-05-18 15:55:51 1078

原创 三分钟看懂JDK、JRE和JVM的区别和联系

节选自(Github 标星 134k star!「Java学习 + 面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识)

2023-05-18 15:41:34 1969

原创 为什么浮点数运算的时候会有精度丢失的风险?如何解决浮点数运算的精度丢失问题?

这个和计算机保存浮点数的机制有很大关系。我们知道计算机是二进制的,而且计算机在表示一个数字时,宽度是有限的,无限循环的小数存储在计算机时,只能被截断,所以就会导致小数精度发生损失的情况。这也就是解释了为什么浮点数没有办法用二进制精确表示。可以实现对浮点数的运算,不会造成精度丢失。通常情况下,大部分需要浮点数精确运算结果的业务场景(比如涉及到钱的场景)都是通过。关于浮点数的更多内容,建议看一下。为什么会出现这个问题呢?

2023-04-08 22:13:39 972

原创 Java 变量常见面试题总结

摘自。

2023-04-08 22:11:54 715

原创 Java 自增自减运算符和移位运算符介绍

当运算符放在变量之后时(后缀),先赋值,再自增/减。在写代码的过程中,常见的一种情况是需要某个整数类型变量增加 1 或减少 1,Java 提供了一种特殊的运算符,用于这种表达式,叫做自增运算符(++)和自减运算符(–)。由于左移位数大于等于 32 位操作时,会先求余(%)后再进行左移操作,所以下面的代码左移 42 位相当于左移 10 位(42%32=10),输出结果和前面的代码一样。掌握最基本的移位运算符知识还是很有必要的,这不光可以帮助我们在代码中使用,还可以帮助我们理解源码中涉及到移位运算符的代码。

2023-04-07 14:08:55 886

原创 Oracle JDK 和 OpenJDK 有什么区别?

(个人观点:众所周知,JDK 原来是 SUN 公司开发的,后来 SUN 公司又卖给了 Oracle 公司,Oracle 公司以 Oracle 数据库而著名,而 Oracle 数据库又是闭源的,这个时候 Oracle 公司就不想完全开源了,但是原来的 SUN 公司又把 JDK 给开源了,如果这个时候 Oracle 收购回来之后就把他给闭源,必然会引起很多 Java 开发者的不满,导致大家对 Java 失去信心,那 Oracle 公司收购回来不就把 Java 烂在手里了吗!OpenJDK 更新频率更快。

2023-04-07 14:07:16 2207 2

原创 为什么说 Java 语言“编译与解释并存”?

这是因为 Java 语言既具有编译型语言的特征,也具有解释型语言的特征。因为 Java 程序要经过先编译,后解释两个步骤,由 Java 编写的程序需要先经过编译步骤,生成字节码(技术,已经缩小了这两种语言间的差距。这种技术混合了编译语言与解释型语言的优点,它像编译语言一样,先把程序源代码编译成。文件),这种字节码必须由 Java 解释器来解释执行。的时候已经提到过,因为比较重要,所以我们这里再提一下。到执行期时,再将字节码直译,之后执行。为了改善编译语言的效率而发展出的。是这种技术的代表产物。

2023-04-07 13:52:05 699

原创 什么是 Java 字节码?采用字节码的好处是什么?

HotSpot 采用了惰性评估(Lazy Evaluation)的做法,根据二八定律,消耗大部分系统资源的只有那一小部分的代码(热点代码),而这也就是 JIT 所需要编译的部分。JVM 会根据代码每次被执行的情况收集信息并相应地做出一些优化,因此执行的次数越多,它的速度就越快。所以, Java 程序运行时相对来说还是高效的(不过,和 C++,Rust,Go 等语言还是有一定差距的),而且,由于字节码并不针对一种特定的机器,因此,Java 程序无须重新编译便可在多种不同操作系统的计算机上运行。

2023-04-07 13:40:12 735

httpclient+jpoup的jar包

网络爬虫用的jar包。 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。

2017-09-23

基于UDP协议的简易聊天机器人

详细详细内容请查看我的博客

2017-06-23

Java案例之随机验证码功能实现

实现的功能比较简单,就是随机产生了四个字符然后输出。效果图如下,下面我会详细说一下实现这个功能用到了那些知识点,并且会把 这些知识点详细的介绍出来。哈哈 ,大神勿喷,对于初学Java的人帮助应该蛮大的。嘿嘿。

2017-06-06

数据结构课程设计

数据结构的课程设计DOS命令菜单实现了链表,栈以及数组,二叉树,图的大部分应用。

2017-06-06

Android编程权威指南(第2版).pdf 高清版

Android编程权威指南(第2版).pdf

2017-04-17

Java思维导图

思维导图完美展现Java知识体系结构,

2017-04-17

java实战之贪吃蛇

自己学java 花了1个月写了这个贪吃蛇,在网上找了一下 没有比我这个代码更简洁,注释更详细的了,希望可以给爱java的程序猿一点帮助.

2016-12-11

如何修改APP图标

很简单容易理解的适合新手的修改自己制作的APP图标的方法

2016-10-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除