为什么FileInputStream、FileOutputStream等中的finalize方法逐渐被移除了?

herman 6年前 (2019-04-06) 2163浏览

这两天过节放假,到哪都是人山人海。本文我是打算出去跑跑的,但是奈何小孩有课要上,所以最终就去上海交大转了转。结果交大也是人满为患。到处都是人,车进去都能堵十几分钟。 在交大玩的空闲时间,我收到知乎上一个推送。有人问我,为什么FileInpu...

表单重复提交的3种场景与解决方案

herman 6年前 (2019-04-04) 5379浏览

最近几天,知识星球在升级,所以知识星球里的内容也无法更新。但是也有一些初学者,问我一些简单的表单重复提交问题。 这个问题其实很简单,但是我身边有几个同事回答的并不算完美,于是我觉得该给各位科普一下,让大家在面试中不吃亏。 表单重复提交其...

手把手教你打造一个SpringBoot自定义的Starter

herman 6年前 (2019-04-04) 2621浏览

SpringBoot 的 Starter 其实并没有什么神奇的。只是最近很多人问起我,而且我的百度搜索指数告诉我,最近搜索 druid-spring-boot-starter 的人在增多。于是,我今天便给大家科普一下,如何自定义实现一个 Sprin...

免费的才是最贵的,Java 8 不交钱你就不安全

herman 6年前 (2019-04-03) 2223浏览

也许很多人都听说过“免费的才是最贵的”这句话,这在 Java 8 上已经开始有所体现。 在 2018 年,我就写过 《重磅!使用了23年的Java不再免费!》 。当时很多人可能会说关我屁事,我们用 OpenJDK 不就行了之类的。但是其实用 ...

一个 System.gc 就能让你在面试中被打击到怀疑人生

herman 6年前 (2019-04-02) 2164浏览

人的一生中可能会遭遇到无数次打击。而今天我就给大家介绍一个你可能忽略的知识点:System.gc,给你专门来一次降维打击。降低到某个细微的知识点,让你被打击的体无完肤。 面试被打击 面试题一:在 Java 中,如何手动的让 GC 进行垃...

面试题:使用 MyBatis 有没有遇到坑?

herman 6年前 (2019-04-02) 3585浏览

说实话,MyBatis 的坑实在是太多了。看似入门很简单,但是实际上在使用的过程中,坑都是一片一片的。 今天我总结了一些 MyBatis 中常见的坑,看你有没有遇到过。 程序员专业挖坑 第一个,MyBatis 中 SQL 语句后面...

手把手教你用代码实现 Unsafe 的 9 大使用场景

herman 6年前 (2019-04-02) 1953浏览

Unsafe 这个类是你用就觉得好用的类。今天我借助它,边介绍它的使用场景便给大家讲实现。 Unsafe 的8大主要功能 使用场景一:Unsafe 可以用在避免类初始化的场景。也就是不需要执行类构造函数的场景,跳过对象初始化阶段,或绕过...

Unsafe 的 CAS 和内存操作的原理、源码解毒

herman 6年前 (2019-04-01) 2609浏览

Java 语言的一大特点就是跨平台,并且提供的有一套完美的内存管理机制。但这都是 JVM 提供的,如果我们想要直接访问系统内存资源、自主管理内存资源等就无法实现。于是 Java 又提供了一个魔法类:Unsafe。 Unsafe 类位于 su...

90%的程序员可能都不了解的堆外内存

herman 6年前 (2019-03-30) 4173浏览

去年我面试了一些程序员,等级从低到高都有。但是没有一个人能够说明白什么是堆外内存! 今天我们就一起来简单的说一说 Java 中的堆外内存。这一块可能 90% 的 Java 程序员都不清楚,希望你看过本文后,成为那 10% 中的大神级别的潜力...

手把手教你利用 SpringBoot + Mybatis 实现一个读写分库项目

herman 6年前 (2019-03-28) 2299浏览

昨天,我发了一篇关于 Spring 脑图的学习知识体系,包括原理,源码解析,结合设计模式等。没想到非常的火爆,微信通讯录里一下子多了很多好友。我预计在今年 5 月份左右通讯录会达到 5000 人的上限。目的还是希望大家相互交流,共同进步,相互鼓励!...