随笔分类 -  java

1 2 下一页
线性集合
摘要:List 为何有序 Set为何无序(如何做到有序) List为何可以重复 而Set却不重复? List可以理解成线性数据结构,它的扩容机制是什么样的? 重点:HashMap原理 理解红黑树的概念 这里我们先讲下set实现。 Set<Integer> set = new HashSet<>(); 是不 阅读全文
posted @ 2020-08-07 16:55 Jason_LZP 阅读(511) 评论(0) 推荐(0)
设计上的一些基本常识--梁飞
摘要:最近给团队新人讲了一些设计上的常识,可能会对其它的新人也有些帮助, 把暂时想到的几条,先记在这里。 API与SPI分离 框架或组件通常有两类客户,一个是使用者,一个是扩展者, API(Application Programming Interface)是给使用者用的, 而SPI(Service Pr 阅读全文
posted @ 2020-06-16 15:57 Jason_LZP 阅读(187) 评论(0) 推荐(0)
spring security oathu2实现(demo)
摘要:主要spring security oathu2实现一般步骤 我们先来看一张图: 这是一般用户名 密码登录操作步骤,在spring security oauth2中是有全部实现的,所以主要注意使用,问题不大。 但现实中,每一个平台登录方式都有可能不一致,比如短信验证码登录,用户名密码加上验证码登录, 阅读全文
posted @ 2020-06-03 10:56 Jason_LZP 阅读(313) 评论(0) 推荐(0)
理解OAuth 2.0(转)
摘要:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。 本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考 阅读全文
posted @ 2020-05-25 10:33 Jason_LZP 阅读(152) 评论(0) 推荐(0)
GitHub OAuth 第三方登录示例教程(转)
摘要:http://www.ruanyifeng.com/blog/2019/04/github-oauth.html 这组 OAuth 系列教程,第一篇介绍了基本概念,第二篇介绍了获取令牌的四种方式,今天演示一个实例,如何通过 OAuth 获取 API 数据。 很多网站登录时,允许使用第三方网站的身份, 阅读全文
posted @ 2020-05-25 10:29 Jason_LZP 阅读(373) 评论(0) 推荐(0)
OAuth 2.0 的四种方式(转)
摘要:http://www.ruanyifeng.com/blog/2019/04/oauth-grant-types.html RFC 6749 OAuth 2.0 的标准是 RFC 6749 文件。该文件先解释了 OAuth 是什么。 OAuth 引入了一个授权层,用来分离两种不同的角色:客户端和资源 阅读全文
posted @ 2020-05-25 10:24 Jason_LZP 阅读(193) 评论(0) 推荐(0)
Spring Security OAuth2(转)
摘要:1、http://www.ruanyifeng.com/blog/2019/04/oauth_design.html 一、快递员问题 我住在一个大型的居民小区。 小区有门禁系统。 进入的时候需要输入密码。 我经常网购和外卖,每天都有快递员来送货。我必须找到一个办法,让快递员通过门禁系统,进入小区。 阅读全文
posted @ 2020-05-25 10:19 Jason_LZP 阅读(148) 评论(0) 推荐(0)
spring cache
摘要:不知道这玩意的人,很喜欢自己实现缓存机制,因为查询嘛。 spring cache缓存可以有很多策略 我们经常使用的就是simple和redis 一切使用的源头,先引入maven包。 然后再配置文件中,配置需要什么缓存。 simple可以换成redis或者其他的缓存机制。 如果是simple,就比较简 阅读全文
posted @ 2020-05-12 09:33 Jason_LZP 阅读(199) 评论(0) 推荐(0)
设计模式 之 桥梁模式(抽象和实现解耦)
摘要:定义: 将抽象和实现解耦,是两者可以独立的变化。 大家看看这个类图,很简单吧。我们根据这个类图来实现一下: 完全根据类图设计: 看下结果 认真理解一下概念,抽象和实现解耦,两者可以随意变化。中间就是架设一层维护接口的抽象类,后进行相关实现,也可以自己的! 阅读全文
posted @ 2020-04-16 15:23 Jason_LZP 阅读(238) 评论(0) 推荐(0)
设计模式 之 备忘录模式(备份)
摘要:定义: 内部状态的保留回复,我们需要发起备份类的请求。 所以,需要被分类: 内部设计有一个state状态属性,在备忘录模式中,需要原角色发起备份请求: 维护备份类角色类: 我们来测一下: 阅读全文
posted @ 2020-04-16 09:56 Jason_LZP 阅读(164) 评论(0) 推荐(0)
设计模式 之 门面模式(画地为牢)
摘要:定义: 我们需要子系统,然后通过统一的对象进行访问即可。 门面类来了,很鸡肋! 门面 模式 最大 的 缺点 就是 不符合 开闭 原则, 对 修改 关闭, 对 扩展 开放, 总体用途不多,根据具体业务来定 阅读全文
posted @ 2020-04-15 17:36 Jason_LZP 阅读(110) 评论(0) 推荐(0)
设计模式 之 组合模式(组织架构树)
摘要:定义: 其实就是树结构的基本实现,类似于组织架构。 这里就是记住在类中保留父节点,具体类中add子节点的时候,保留自身父节点。一切往树上靠! 阅读全文
posted @ 2020-04-15 16:04 Jason_LZP 阅读(469) 评论(0) 推荐(0)
设计模式 之 迭代器模式(没落中找生存)
摘要:定义: 如果你是做Java开发, 尽量不要自己写迭代器模式! 省省吧, 使用 Java 提供 的 Iterator 一般就能满足你的要求了。 这里就不写样例了。 阅读全文
posted @ 2020-04-15 15:14 Jason_LZP 阅读(124) 评论(0) 推荐(0)
设计模式 之 适配器模式(面对需求变化,中转站)
摘要:定义: 其实就是当你开发完之后,需求变了,现在需要把新需求嵌入到之前的需求中,中间架设一个adapter即可。 包含,目标角色,适配器,源角色 其实适配器模式可以很复杂的,这里介绍一个很简单的。 目标对象,一般是接口或者抽象类派生的。 源对象,已经实现好的,但是要嵌入到目标对象中。 现在需要一个适配 阅读全文
posted @ 2020-04-15 14:08 Jason_LZP 阅读(159) 评论(0) 推荐(0)
设计模式 之 策略模式(刘备乐不思蜀,三个锦囊妙计)
摘要:定义: 这里先说好,策略模式跟代理模式很像,这里代码贴完后,大家参考一下,对比一下,区别在哪里。 我们需要一个策略,一般是一个接口或者抽象类。 策略可以有多个实现: 多个实现 可以互换,这是定义讲的。 我们现在需要一个策略类, 在这里就是跟代理模式不一样了,构造方法都是传相应对象进来,但是Conte 阅读全文
posted @ 2020-04-14 16:16 Jason_LZP 阅读(209) 评论(0) 推荐(0)
设计模式 之 装饰者模式(对方法扩展)
摘要:定义: 对 对象进行扩展。 我们需要一个基本需要被扩展的类。 对抽象类进行实现: 一般来说,都是抽象类,或者接口先写,说白了离开了接口或者抽象类的形式,就不存在java语言的设计模式了! 被装饰类我们写好了,我们现在需要一个装饰类。 修饰类有多种,对方法扩展可能又多种,根据具体业务来,如果只有一种, 阅读全文
posted @ 2020-04-14 11:52 Jason_LZP 阅读(253) 评论(0) 推荐(0)
设计模式 之 责任链模式(保留下一个操作)
摘要:概念: 初看这一个定义,感觉有点无奈?请求者跟接受者的耦合关系。其实就是请求跟处理结果分开! 看明白没有?其实就是handler确定自己的下个节点,确认返回值。 我们按照责任制的规则,定义一个责任类 每一个责任类都定义下一个节点的操作,有节点的操作的话,就定义下一个操作方法,我这里写的很简单,具体应 阅读全文
posted @ 2020-04-13 17:41 Jason_LZP 阅读(218) 评论(0) 推荐(0)
设计模式 之 命令者模式(Invoker 冤大头)
摘要:概念: 如果存在多个请求,我们需要一个“头目”去接受请求,参数化管理,以达到不同的业务逻辑。高内聚其实就是内部封装比较完整,根据不同参数去执行不同操作。 多个业务,每个业务都有不同的执行人,要是项目忙碌起来,我们肯定是想我们制定一个带头大哥去对接需求方,然后通过内部自己消化,自己去实现新需求,没必要 阅读全文
posted @ 2020-04-10 17:55 Jason_LZP 阅读(814) 评论(0) 推荐(0)
设计模式 之 中介者模式(没事找中介帮忙)
摘要:中介者模式概念: 对象交互简单的话,其实没必要,但是如果很复杂的交互,设计到多个业务之间的多个循环往复,那就需要使用了,类似于我们的房屋中介,媒体网关等等,其实就是中介者模式的雏形。 对象交互,一般都是相关系的,所以我们这里建立一个抽象类: Midetor是什么?别急,是中介抽象类,我们现在就来看看 阅读全文
posted @ 2020-04-10 16:40 Jason_LZP 阅读(159) 评论(0) 推荐(0)
设计模式 之 原型模式(复制copy)
摘要:先看原型模式定义: 关键词:拷贝 在Java语言环境中,本省就有clone 拷贝方法,所以在原型模式中,就是利用clone,复制对象,生产新的对象。 实现cloneable接口,对clone方法进行重写。 这就是原型模式。 比如说发邮件,一次性发大量的邮件,邮件地址,邮件内容都不一样。那么没必要每次 阅读全文
posted @ 2020-04-10 14:32 Jason_LZP 阅读(307) 评论(0) 推荐(0)

1 2 下一页