优质文章

高级Java开发者都知道的Hook钩子函数,你还不知道吗?

高级Java开发者都知道的Hook钩子函数,你还不知道吗?

什么是钩子函数,在学习钩子函数之前,小编先提一个问题。 请问在Spring中,如果JVM异常终止,Spring是如何保证会释放掉占用的资源,比如说数据库连接等资源呢? 钩子函数非常简单,简单到小编只用摘抄一段Spring代码即可。走...

高级Java开发工程师带你走进原子操作,一篇文章搞清楚原子操作

高级Java开发工程师带你走进原子操作,一篇文章搞清楚原子操作

原子特性: 原子是最小的粒子,不可再分 这并不是一个化学课,而是巧妙的借用了化学上的一个概念,即原子是最小的粒子,不可再分;原子操作也是不能再分的操作;为了能把这个讲明白,下文基本都是大白话,其实Java本来并不是很难,而是总有一些...

Java代码片段实战篇之GuavaCache内存缓存

Java代码片段实战篇之GuavaCache内存缓存

本篇主要是本地缓存代码实战,提供业务中常用的本地缓存使用代码片段(直接跳过看标题五) 写在前面: 长在业务系统中做开发,不会点高级知识点,有点不好意思了。在业务系统中,提高系统响应速度,提供系统高并发能力,其实方向很简单,三个方向,...

Java代码片段工具篇之StreamFilter过滤器简化写法

Java代码片段工具篇之StreamFilter过滤器简化写法

代码片段系列, 前面写了一个日期生成工具,受到很多同学的关注,再次在分享一个小编在业务中简化代码的过滤。并没有技术难度和技巧,仅仅是对原生lambda的封装,简化使用语法。 JDK原生过滤器语法其实很简单的过滤,但是使用JDK原生语法...

Java代码片段工具篇之StreamBinder数据分组简化

Java代码片段工具篇之StreamBinder数据分组简化

什么是分组,在写业务代码时候,经常会遇到分组的需求,将数据根据某一个条件分组成一对多,或者拆分成一对一的关系。JDK是对Stream提供了分组的方法但是不是特别好用,代码写起来也不够精简,为了让业务代码更加精简,实现业务更简单。对数据...

给Java程序员快速提升开发水平的29条建议

给Java程序员快速提升开发水平的29条建议

1、重构是程序员的主力技能。 2、工作日志能提升脑容量。 3、先用profiler调查,才有脸谈优化。 4、注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。 5、普通程序员+google=超级程序员。...

Java集合框架学习总结

Java集合框架学习总结

一、集合是什么 ?1. 集合知识概念前面我们学习过了,Java中的基本类型,任何单一的数据都可以用基本类型来表达,这些单一的基本类型被统一的组合或者管理起来的就是集合,或者叫容器也可以。 举例: 我们用数据来表示一个学校的存在。首先...

「四年总结」一名程序猿的打怪升级之路

「四年总结」一名程序猿的打怪升级之路

不知不觉,入行已经四年时间了,写博客也写了四年了。在即将步入2020新的一年,写下这一篇文章,对自己过去四年的进行一次分析和总结,既作为自己的年终总结,也希望能对各位读者、各位Developer的成长有些许启发。 一、为什么要写博...

Nginx最强使用指南

Nginx最强使用指南

一、简介创始人: 伊戈尔·赛索耶夫 Nginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站...