Java North

Java 's Blog


  • 首页

  • 分类

  • 作者

  • 归档

  • 关于

如果你还对面试常问的缓存击穿、缓存穿透和缓存雪崩不了解,那么你一定得看看

发表于 2021-06-20 | 分类于 redis

大家好,我是指北君。

对于使用过Redis的同学,一定听过缓存击穿、缓存穿透或者缓存雪崩吧?这是缓存系统最常见的几个问题。 但是我相信很多同学对这三个之间的概念都是模模糊糊的,今天这篇文章就是为了说明这三者之间的区别,以及如果解决这些问题。希望你在面试相关问题时可以准确的回答。

阅读全文 »

不懂这个工具类,你还说你会Java? 20210819

发表于 2021-06-20 | 分类于 JDK , 源码解读

哈喽,大家好,我是指北君。 日常开发中,我们会使用各种工具类,利用封装好的轮子,能让我们的开发事半功倍。但是在JDK中,有一个特别的工具类——java.lang.Arrays.class,其源码实现还是挺精湛,接下来让我们来揭开它神秘的面纱。

阅读全文 »

泡茶喝水?用FutureTask吧!

发表于 2021-06-20 | 分类于 JDK , JUC , 源码解读

大家好,我是指北君。

告诉大家一个小秘密,其实指北君没事就会出去面试,目的并不是找工作,而是想看看市场行情。最近面了一圈发现,现在的面试题真是“稀奇古怪”,各式各样,这不,指北君就碰到一个大佬,一上来就问我喜不喜欢喝茶,我猜大佬应该喜欢喝茶,就附和说喜欢,结果大佬转手就是一句,”那我们做个题吧,用程序实现一个烧水泡茶的程序”,擦,原来这是挖坑啊,早知道我就说我只喝咖啡了🐶!不过还好,指北君基础扎实😎,用FutureTask实现了这个功能,所以今天指北君就说说这道面试题。

阅读全文 »

听说有人想要做全套,那么今天它来了,保证让你的JVM不再寂寞-GC垃圾收集器&JVM调优汇总-20210823

发表于 2021-06-19 | 分类于 JVM , GC

最近朋友小B说想一份GC优化的资料内容,JVM内存分析以及性能调优的时候方便查询。可是文章太多根本看不过来,那么今天指北君就为大家带来这份,GC垃圾收集器总结及其优化指南,让你的JVM从此不再寂寞。

阅读全文 »

定了!Java 17再没有了ZGC的更新,那么是时候盘一盘Java11时推出并在12-16均有更新的ZGC了。--20210816

发表于 2021-06-19 | 分类于 JVM , ZGC

Java长期支持版本Java11发布时推出了ZGC, 之后的Java12 -16均有ZGC的一些更新。然而Java17的新特性已经敲定,确定没有关于ZGC的相关更新,也从另一方面说明了至Java17 ZGC已经比较稳定,可以作为比较稳定的GC垃圾回收器。相信未来ZGC必定会成为主流的Java垃圾回收期,那么盘一盘ZGC就是必然的了。

阅读全文 »

拼接字符串,还能这么玩 --20210813

发表于 2021-06-17 | 分类于 StringJoiner

大家好,我是指北君。

前言

最近呢,指北君的朋友小王在面试的时候,又遇到了问题,再次回家等通知,找个工作不容易啊,太卷了。

面试官:你知道使用原生 JDK 拼接字符串有多少种玩法吗?

小王:StringBuilder、StringBuffer、 String.concat、还有用 + 拼接。(这也太简单了吧,小王心理OS。)

面试官又问,还有其他的方法吗?

小王有点开始纳闷了,还有其他的吗?没见过呀。难道是字符数组来拼接出来。

小王:字符数组拼接。

面试官还是继续追问,还有吗?小王心想还能有啥啊,该说的我都说了啊,更多的我也不知道啦,只能回答没有了。

面试官见状提醒了小王,你在用JDK 1.8及以上版本吗? Java 8 里面新增了一个拼接字符串的类 ,叫 StringJoiner ,你可以去看一下。 小王很无奈,这个类还真没看到过。

阅读全文 »

司空见惯的Exception,你了解她的秘密吗?--20210812

发表于 2021-06-17 | 分类于 JDK , 异常

大家好,我是指北君,对于Exception,不用说Java人都知道。指北君一直以来有个不治之症:对Java的一切东东有追根寻底的强迫症,不了解其所以然就睡不了觉,这不,为了能睡个好觉就带领大家探一探Exception的秘密。

阅读全文 »

switch 都支持null了,难道客官还不进来看看! Java17新特性(预览)尝鲜之switch万剑齐发 --20210811

发表于 2021-06-13 | 分类于 Java

曾几何时指北君去面试的时候,一些面试官老是问 switch 支持 String 麽之类的问题。 如今指北君想拍案而起,不要在问了,Java 中的 switch 都快支持到银河系了。什么null,Object… …等等, 已经全部支持! 下面指北君带大家看看万箭齐发的switch到底有多强。

没搞错,就是时代新贵 Java17 推出的新特性喽。虽然暂时还没有完全发布,而且是预览特性。但我们还是可以玩一玩这个飞出天际线的switch!

阅读全文 »

听说你还没学Spring就被源码编译劝退了?手把手带你编译Spring框架源码,让你的学习事半功倍

发表于 2021-06-13 | 分类于 Java

大家好,我是指北君。

最近呀,有小伙伴提出 自己在学习 Spring 的时候,这个源码环境有些搞不定。 那这怎么能行,不能因为这点小困难就让小伙伴放弃呀。

这里咱就不在赘述读Spring源码的好处了吧,想干这行的应该都懂。

今天就是要带那些想要学习 Spring 源码的小伙伴,手把手带大家把这个源码编译好,这活尽量呀,给大家得整的漂亮点。

阅读全文 »

掌握这项Java技能,你也可以吹一吹大数据处理了--20210809

发表于 2021-06-13 | 分类于 JDK , 新特性

大家好,我是指北君,在如今的大数据时代,对于数据的生产线式的加工处理场景越来越多,Java8之前对于这种类型的数据处理是显得有些笨拙的,代码繁多臃肿(过多的中间过程变量和过程),显得不够优雅和简洁。在Java8引入Stream包后,我们就可以得心应手地应付这种场景。

阅读全文 »

从舔狗的新路历程看垃圾回收--20210806

发表于 2021-06-13 | 分类于 gc

大家好,我是指北君。

端午了,我的朋友小 B 准备约女神看电影、划龙船,可惜等了几个小时都没有被回应。小 B 觉得他在女神心里就是那随时都可以被 Java 内存空间回收的垃圾对象,为了永占女神心中 C 位,小 B 决定去看看 JAVA 中的对象要怎样做才能不被回收。加油!加油!加油!小 B 给自己打了一波鸡血。

阅读全文 »

都在聊云开发了,你还没听过Docker?--20210805

发表于 2021-06-13 | 分类于 Docker

Docker 的概念想必大家已经了解了,最直观的好处就是可以不安装虚拟机,不需要安装软件,不需要配置环境的情况下,就将我们想用的软件跑起来。

image-20210613163236155

阅读全文 »

3分钟带你品尝 新鲜出炉的Java 17,鲜嫩多汁,看完就知道香不香! --20210804

发表于 2021-06-13 | 分类于 Java

Java 17

Java已经过了20个年头了,Java8之后,JDK的发行计划变了不少,半年一小聚,三年一大闹。根据Oracle官方的的文档,长期支持的Java版本是Java11 和 Java17。 其中Java17计划在2021年9月14号发布,Java17 将是一个长期支持的版本(Long Terms Support)。既然长期支持,作为Java程序员就必须重视并搞起来。那么让我们来阅览一下二十年陈酿 Java17 。文木附送OpenJDK 17 Earily Access 版本下载地址,还不玩起来!

阅读全文 »

代购 == 代理模式? -- 20210802

发表于 2021-06-12 | 分类于 设计模式

大家好,我是指北君。

最近指北君的女神要生日了,所以指北君决定通过代购买个小包包当生日礼物(这半个月又白忙活了😭),在下单完的一瞬间,突然指北君发现,代购和我们Java中的静态代理模式很像啊,指北君顾不上买包的心痛,马上码了这篇文章。

阅读全文 »

阿里四面,居然栽在一道排序算法上 --20210730

发表于 2021-06-12 | 分类于 算法 , leetcode

大家好,我是指北君。

前两天有童鞋发消息给指北君哭诉阿里四面挂了,据了解,面试过程中该童鞋表现得很不错,所以最后面试官出了道简单题”912. 排序数组“放放水,但指定使用归并排序算法,但该读者因为细节问题运行case始终过不了,最终收到感谢信。

阅读全文 »

模块系统-module -- 20210729

发表于 2021-06-11 | 分类于 JDK , 新特性

大家好,我是指北君,本次将为大家带来Java模块系统的介绍。模块化一直是软件工程和设计领域的重要关注点,模块化程度的高低决定了产品在安全、可复用、扩展、升级、维护等诸多方面是否具备竞争力。 Java的模块系统是JDK9引入,由于Java的9,10两个版本不是LTS版本,所以大部分人接触到Java的模块系统是在Java11中。

阅读全文 »

都1202年了,还不懂String类的原理吗? -- 20210728

发表于 2021-06-11 | 分类于 JDK , 源码解读

哈喽,大家好,我是指北君。
java.lang.String类可能是大家日常用的最多的类,但是对于它是怎么实现的,你真的明白吗?不知道不要紧,善解人意的指北君写下了这篇文章,包你一看就明白了。

阅读全文 »

3个案例让你掌握 Spring Boot 全局异常处理 --20210726

发表于 2021-06-10 | 分类于 Spring-Boot

大家好,我是指北君。

前言

在平时的 API 开发过程中,总会遇到一些错误异常没有捕捉到的情况。那有的小伙伴可能会想,这还不简单么,我在 API 最外层加一个 try...catch 不就完事了。

哈哈哈,没错。这种方法简单粗暴。指北君曾经也是这么干的,但是你转过来想一想,你会在每一个 API 入口,都去做 try...catch 吗?这样不是代码非常丑陋的。小伙伴开始思考,突然灵光一现,说我们实现一个 AOP 来做这事不久完了。没错,使用 AOP 来实现是最佳的选择。

现在指北君就给大家来介绍介绍 Spring Boot 怎么通过注解来实现全局异常处理的。

阅读全文 »

一篇搞定@SpringBootApplication注解所有面试题 --20210723

发表于 2021-06-10 | 分类于 Spring-Boot

大家好,我是指北君。

前言

前几天,指北君有一个朋友小王在面试过程中被吊打了。当时的情况是这样的。

面试官:Spring Boot 中最重要的注解是什么?你能讲讲为什么最重要吗?

小王:@SpringBootApplication,这个注解最重要吧。 @SpringBootApplication 注解能够实现 Spring 组件自动化配置,组件扫描。

面试官:那 @SpringBootApplication 注解是怎么实现 Spring Boot 的自动配置功能呢?

小王心想大事不妙,还真没有看过这块源码。支支吾吾回答不上,只好回家等通知了。

阅读全文 »

线程:臣妾不止能抢资源还能合作共赢 --20210722

发表于 2021-06-10 | 分类于 CyclicBarrier

大家好,我是指北君。

前几天指北君的朋友小 B,写了一个导出 excel 下载太慢被客户嫌弃了。

指北君就让小 B 用 CyclicBarrier 。CyclicBarrier 是一个循环的栅栏,在多个线程完成各自的任务之后,主线程才可以开始执行任务。小 B 的情况就适用于多个线程并行查询数据库,然后写入 excel 的各个 sheet 页,在所有操作完成之后执行汇总数据的算法并将结果写入汇总的 sheet 页。

阅读全文 »
1 … 14 15 16 17
Java Geek Tech

Java Geek Tech

一群热爱 Java 的技术人

328 日志
117 分类
44 作者
RSS
GitHub 知乎
Links
  • 纯洁的微笑
© 2019 - 2023 Java Geek Tech
由 Jekyll 强力驱动
主题 - NexT.Mist