摘要:
Shiro 简介 Authentication(认证、鉴定):身份认证、登陆,验证用户是否拥有响应的身份 Authorization(授权、批准):授权,即权限验证,验证某个认证的用户是否拥有某个权限,某个用户是否拥有操作某个动作的权限,访问某个资源的权限 Session Manager: 会话管理 阅读全文
摘要:
单例模式(Singleton Pattern) 定义:确保某个类只有一个实例,并且自行实例化并向整个体系提供这个实例 需求:保证对象只创建一次 场景:线程池、缓存、日志对象、对话框等常被设计为单例。 Singleton 通过构造方法限定 private 避免类在外部被实例化,在同一个虚拟机范围内,S 阅读全文
摘要:
工厂方法模式(FactoryMethod)(参考) 工厂方法的定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类。 作用: 将类的实例化延时到工厂的子类中完成 优点:不需要关系具体的产品,只需要面向共厂,传入需要实例化的产品即可产生实例。 特点: 01.每个具体的产品都有属于自己的工厂,导致 阅读全文
摘要:
模板模式(Template Method) 场景: 在设计一个系统时,知道了算法所需的步骤,而且确定了这些步骤的执行顺序,但是步骤的具体实现还未知,或者说步骤的实现与具体的环境相关。 模板方法模式定义: 定义一个操作的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变算法结构的情况下重定义 阅读全文
摘要:
适配器:继承适配与委托适配 需求:Banner 可以输出强电流380v、弱电流12v,但是不能被直接使用。通过别的方式,介间的使用banner? 委托类图: 代码清单: 需要隐藏的功能类: 代理接口: 代理实现: 测试类: 阅读全文
摘要:
迭代器模式 Iterator 迭代器模式用于顺序访问集合对象元素,不需要知道集合对象的底层表示。属于行为型模式 意图:提供一种方法顺序访问一个聚合对象中各个元素,而无需暴漏该对象的内部表示 主要解决:不同的方式来遍历整个对象 何使使用:遍历一个聚合的对象 如何解决:把元素之间游走的责任交给迭代器,而 阅读全文
摘要:
什么是AOP 如何实现 基本概念 一、什么是AOP AOP: Aspect Oriented Programming 即面向切面编程,它是一种思想,针对业务处理过程中的切面进行提取,以达到优化代码的目的,减少重复代码的目的。例如在编写业务逻辑的时候, 我们习惯都要写日志,事务控制,以及权限控制,每一 阅读全文
摘要:
spring boot + mybatis + redis 配置 1.application.yml #配置访问的URLserver: servlet-path: /web port: 8090 spring: datasource: druid: # 数据库访问配置, 使用druid数据源 db- 阅读全文