摘要: `Java 8`种基本的数据类型,其他一切皆为对象。因此,在 中定义函数或方法都离不开对象,也就意味着很难直接将方法或函数像参数一样传递,而 中的 表达式解决了这个问题。 一、为什么需要 ? 简单的来说,引入 就是为了简化代码,允许把函数作为一个方法的参数传递进方法中。 1.1 真的简化了? 示例: 阅读全文
posted @ 2020-02-19 21:24 风尘博客 阅读(739) 评论(0) 推荐(0) 编辑
摘要: 因为在生产环境会遇到很多问题,那么最快的定位方式莫过于去看日志,我们都知道服务器每天会产生大量的日志,那么如何快速的定位也就是最关键的。 本文介绍六种查看日志的命令: 、`head cat more less sed`。 一、 1.1 命令功能 命令从指定点开始将文件写到标准输出。 1.2 命令格式 阅读全文
posted @ 2020-02-11 23:54 风尘博客 阅读(3623) 评论(1) 推荐(2) 编辑
摘要: 一、背景 之前, 时间使用 和 类。 的几个问题: 1. 如果不格式化, 打印出的日期可读性差; 1. 可以使用 对时间进行格式化,但 是线程不安全的(阿里巴巴开发手册中禁用 修饰 ); 1. 对时间处理比较麻烦,比如想获取某年、某月、某星期,以及 天以后的时间,如果用 来处理的话真是太难了,并且 阅读全文
posted @ 2020-02-06 16:10 风尘博客 阅读(1216) 评论(0) 推荐(0) 编辑
摘要: `SELECT COUNT( ) FROM table_name`是个再常见不过的统计需求了。 本文带你了解下 的`COUNT`函数。 一、 函数 关于 函数,在 官网中有 "详细介绍" : 翻译一下: 1. ,返回 语句检索的行中 的值不为 的数量,结果是一个 值。 1. 如果查询结果没有命中任何 阅读全文
posted @ 2020-02-01 15:11 风尘博客 阅读(1250) 评论(0) 推荐(0) 编辑
摘要: 一、概述 泛型( )是 中引入的一个新特性, 泛型提供了 编译时类型安全检测机制 ,该机制允许开发者在编译时检测到非法的类型。 1.1 什么是泛型? 泛型,即 参数化类型 。 一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具 阅读全文
posted @ 2020-01-18 19:38 风尘博客 阅读(675) 评论(1) 推荐(3) 编辑
摘要: 一、定义 是`JDK ThreadLocal`意思就是本地线程的意思。 1.1 是什么? 要想知道他是个啥,我们看看 的源码(基于 )中对这个类的介绍: 大致能够总结出: 1. 可以给我们提供一个线程内的局部变量,而且这个变量与一般的变量还不同,它是每个线程独有的,与其他线程互不干扰的; 1. 与普 阅读全文
posted @ 2020-01-15 00:18 风尘博客 阅读(863) 评论(0) 推荐(1) 编辑
摘要: 工厂模式应用非常之广,在 底层源码以及各大主流框架中随处可见,一般以 结尾命名的类,比如 中的 ,`Spring BeanFactory`等,都是工厂模式的典型代表。 一、简单工厂模式 1.1 概念 简单工厂模式又称为静态工厂模式,属于设计模式中的创建型模式。简单工厂模式通过对外提供一个静态方法来统 阅读全文
posted @ 2019-12-03 08:06 风尘博客 阅读(561) 评论(2) 推荐(0) 编辑
摘要: 业务系统中经常需要两个对象进行属性的拷贝,大多时候时候使用的是`Apache`或`Spring``BeanUtils`,今天,我们来看一下一个更高效的属性拷贝方式:`BeanCopier`。 阅读全文
posted @ 2019-11-07 09:54 风尘博客 阅读(5296) 评论(1) 推荐(2) 编辑
摘要: Map 中 ConcurrentHashMap是线程安全的,但不是所有操作都是,例如 get() 之后再 put() 就不是了,这时使用 merge() 确保没有更新会丢失。因为Map.merge()意味着我们可以原子地执行插入或更新操作,它是线程安全的。 阅读全文
posted @ 2019-10-10 09:35 风尘博客 阅读(1281) 评论(0) 推荐(1) 编辑
摘要: 本文主要讲解Spring Boot 整合Jwt 认证的示例,详细内容,详见文末源码。 阅读全文
posted @ 2019-10-05 00:08 风尘博客 阅读(834) 评论(0) 推荐(0) 编辑