跨域 跨域同源策略说到跨域,首先需要解释下为什么会出现这样的跨域问题。这其实都源于浏览器的同源策略。 同源策略是浏览器中的一个重要的安全策略,是Netscape公司在1995年引入。同源策略的作用就是为了限制不同源之间的交互,从而能够有效避免XSS、CSFR等浏览器层面的攻击。 同源指的是两个请求接口URL的协议(protocol)、域名(host)和端口(port)一致。 同源策略 比如以下例子: 同 2022-09-03 Http #http
单例设计模式 一、单例模式的定义定义: 确保一个类只有一个实例,并提供该实例的全局访问点。 这样做的好处是:有些实例,全局只需要一个就够了,使用单例模式就可以避免一个全局使用的类,频繁的创建与销毁,耗费系统资源。 二、单例模式的设计要素 一个私有构造函数 (确保只能单例类自己创建实例) 一个私有静态变量 (确保只有一个实例) 一个公有静态函数 (给使用者提供调用方法) 简单来说就是,单例类的构造方法不让其他人 2022-09-03 java #设计模式
行为型设计模式 行为型设计模式策略设计模式 定义:指定义一系列算法,并将每一种算法封装起来,让它们可以相互替换。策略模式能让算法独立于使用它地客户而变化。 结构图: 模板设计模式 定义:指定义一个操作中算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一种算法的结构即可重定义该算法的某些特定步骤。 结构图: 备忘录模式 定义:指在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象 2022-09-03 java #设计模式
创建型设计模式 创建型设计模式简单工厂模式 定义:定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。 结构图 工厂方法模式 定义:定义一个用于创建对象的接口,但是让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类 结构图: 抽象工厂模式 定义:提供一个创建一些列相关或相互依赖对象的接口,而无需指定它们具体的类。 结构图: 建造者模式 2022-09-03 java #设计模式
结构型设计模式 结构型设计模式适配器模式 定义:将一个类的接口转换成客户希望的另外一个接口。适配器模式让那些接口不兼容的类可以一起工作。 结构图: 桥接模式 定义:将抽象部分与它的实现部分解耦,使得两者都能够独立变化。 结构图: 组合模式 定义:组合多个对象形成树形结构以表示具有部分-整体关系的层次结构。组合模式让客户端可以统一对待单个对象和组合对象。 结构图: 装饰模式 定义:动态地给 2022-09-03 java #设计模式
各种设计模式应用场景 设计模式应用场景 如何确保系统中一个类只有一个实例?单例模式 如何将对象的创建和对象的使用分离?简单工厂模式 如何通过不同的工厂来创建不同类型的对象?工厂方法模式 如何设计一个能够闯将一些列产品对象的工厂?抽象工厂模式 如何通过克隆来得到一个一模一样的对象?原型模式 如何一步步创建一个包含多个组成部分的复杂对象?建造者模式 如何在不修改现有系统的前提下重用没有源码的第三方类库?适配器模式 如何避免 2022-09-02 #设计模式
软件设计模式基础 软件设计模式软件设计模式定义软件设计模式是一套被反复使用,经过分类编目的代码设计经验的总结。使用软件设计模式是为了可重用代码、让代码更容易被他人理解、保证代码的可靠性。 软件设计模式定义有如下定义: 软件设计模式是对代码设计经验的总结,且经过分类编目。 软件设计模式的根本目的是提高代码的重用性和可靠性。代码重用性是指相同功能的代码,不必多次编写。代码可靠性是指增加新功能时,对原来的功能没有影响。 2022-09-02 java #设计模式