摘要:工厂模式应用非常之广,在 底层源码以及各大主流框架中随处可见,一般以 结尾命名的类,比如 中的 ,`Spring BeanFactory`等,都是工厂模式的典型代表。 一、简单工厂模式 1.1 概念 简单工厂模式又称为静态工厂模式,属于设计模式中的创建型模式。简单工厂模式通过对外提供一个静态方法来统 阅读全文
posted @ 2019-12-03 08:06 风尘博客 阅读 (137) 评论 (2) 编辑
摘要:业务系统中经常需要两个对象进行属性的拷贝,大多时候时候使用的是`Apache`或`Spring``BeanUtils`,今天,我们来看一下一个更高效的属性拷贝方式:`BeanCopier`。 阅读全文
posted @ 2019-11-07 09:54 风尘博客 阅读 (314) 评论 (1) 编辑
摘要:Map 中 ConcurrentHashMap是线程安全的,但不是所有操作都是,例如 get() 之后再 put() 就不是了,这时使用 merge() 确保没有更新会丢失。因为Map.merge()意味着我们可以原子地执行插入或更新操作,它是线程安全的。 阅读全文
posted @ 2019-10-10 09:35 风尘博客 阅读 (232) 评论 (0) 编辑
摘要:本文主要讲解Spring Boot 整合Jwt 认证的示例,详细内容,详见文末源码。 阅读全文
posted @ 2019-10-05 00:08 风尘博客 阅读 (224) 评论 (0) 编辑
摘要:本案例主要讲解 实现分布式锁的两种实现方式: 实现、 实现。网上关于这方面讲解太多了,Van自认为文笔没他们好,还是用示例代码说明。 一、 实现 该方案只考虑 单机部署的场景 1.1 加锁 1.1.1 原理 1. : 使用 来当锁,因为 是唯一的; 1. : 我传的是唯一值( ),很多童鞋可能不明白 阅读全文
posted @ 2019-09-21 00:34 风尘博客 阅读 (470) 评论 (1) 编辑
摘要:如何逃离令人抓狂的 if-else 参数校验的代码,Van 带你用validator快速搞定,节省更多的时间勾搭小姐姐。 阅读全文
posted @ 2019-09-11 23:47 风尘博客 阅读 (501) 评论 (1) 编辑
摘要:在单机场景下,全局唯一的ID可以使用数据库的自增功能,分布式系统一般是高并发场景,那自然不适合。 阅读全文
posted @ 2019-09-05 00:04 风尘博客 阅读 (1449) 评论 (6) 编辑
摘要:从今天开始,我将正式开始设计模式系列文章的写作分享。第一篇,当然从单例模式说起。 单例模式可以说只要是一个合格的开发都会写,但是如果要深究,小小的单例模式可以牵扯到很多东西,比如:多线程是否安全?是否懒加载?性能等等。还有你知道几种单例模式的写法呢?如何防止反射破坏单例模式? 阅读全文
posted @ 2019-09-02 01:00 风尘博客 阅读 (456) 评论 (4) 编辑
摘要:现在几乎大部分的`App`都支持使用多个第三方账号进行登录,如:微信、QQ、微博等,我们把此称为多账号统一登陆。而这些账号的表设计,流程设计至关重要,不然后续扩展性贼差。本文不提供任何代码实操,但是梳理一下博主根据我司账号模块的设计,提供思路,仅供参考。 阅读全文
posted @ 2019-08-29 00:48 风尘博客 阅读 (1145) 评论 (0) 编辑
摘要:文章浏览量统计,low的做法是:用户每次浏览,前端会发送一个GET请求获取一篇文章详情时,会把这篇文章的浏览量 +1,存进数据库里。 阅读全文
posted @ 2019-08-27 00:25 风尘博客 阅读 (653) 评论 (3) 编辑