![](https://img-blog.csdnimg.cn/20210319225802434.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
java
java架构
高山流水,水到渠成
不只做一个技术者,
更要做一个思考着
展开
-
十二:手写初体验Spring V1.0版本
1.1.实现思路 先来介绍一下Mini版本的Spring基本实现思路,如下图所示: 1.2.自定义配置 application.properties 文件 为了解析方便,我们用application.properties来代替application.xml文 件 ,具体配置内容如下: scanPackage=com.gupaoedu.demo 1.3.配置web.xml文件 大家都知道,所有依赖于web容器的项目,都是从读取web.xml文件开始的。我们先配置好web.xml 中的内容。原创 2020-06-17 07:47:16 · 187 阅读 · 1 评论 -
十一:Spring前世今生与Spring编程思想
1.Spring的前世今生 相信经历过不使用框架开发Web项目的70后、80后都会有如此感触,如今的程序员开发项目太轻松了 ,基本只需要关心业务如何实现,通用技术问题只需要集成框架便可。早在2007年 ,一个基于 Java语言的开源框架正式发布,取了一个非常有活力且美好的名字,叫做Spring。它是一个开源的轻量级Java SE (Java标准版本)/Java EE (Java企业版本)开发应用框架,其目的是用于简化企业级应 用程序开发。应用程序是由一组相互协作的对象组成。而在传统应用程序开发中,一个完整的原创 2020-06-17 07:33:50 · 202 阅读 · 0 评论 -
十:策略模式详解
1.定义 策略模式 (Strategy Pattern) 又叫也叫政策摆式 (Policy Pattern) , 它是将定义的算法家族、分 别封装起来,让它们之间可以互相替换,从而让算法的变化不会影响到使用算法的用户。属千行为型模式。 策略摆式使用的就是面向对象的继承和多态机制,从而实现同—行为在不同场萦下具备不同实现。 2.应用场景 策略模式在生活场景中应用也非常多。比如—个入的交税比率与他的工资有关,不同的工资水平对 应不同的税率。再比如我们在互联网移动支付的大背景下,每次下单后付款前,需要选择原创 2020-06-17 07:21:06 · 431 阅读 · 0 评论 -
九:适配器模式详解
适配器模式是指将一个类的接口转换成用户期望的一个接口,事原本接口不兼容的类可以一起工作,属于结构型设计模式 适配器模式适用于以下几种业务场景 1.已经存在的类 的方法和需求不匹配(方法结果相同或相似)的情况 2.适配器模式不是软件初始阶段考虑的设计模式,是随着软件的发展,由于不同产品,不同厂家造成功能类似而接口不同的问题的解决方案,有点亡羊补牢的感觉 场景:民用电压220V变5V pu...原创 2020-05-17 22:15:27 · 192 阅读 · 0 评论 -
八:装饰器模式详解
装饰器模式在我们生活中应用也比较多如给煎饼加鸡蛋加香肠,代码如下 public class Pancake { public String getMeg(){ return "煎饼"; } public int getPrice(){ return 5; } } public class PancakeWithEgg exte...原创 2020-04-26 15:08:43 · 161 阅读 · 0 评论 -
七:模板模式详解
我们平时的入职流程是填写入职登记表→打印简历→复印学历→复印身份证→签订合同→安排工位等,这个流程是针对每个人都是这样的,这样的可以称为模板 模板模式又成模板方法模式,是指定义一个算法骨架,并允许子类为一个或者多个步骤提供实现 。模板模式使得子类可以子类在不改变算法结构的情况下,重新定义算法的某些步骤,属于行为设计模式。模板模式使用与以下场景: 1.一次性实现一个算法的不变部分,并将可变的行...原创 2020-04-22 08:18:50 · 172 阅读 · 0 评论 -
六:委派模式详解
委派模式:基本作用就是负责任务的调用和分配,跟代理模式很像,可以看作一种特殊情况下的静态全权代理,但是代理模式注重过程,而委派模式注重结果。Spring中DispathenServlet就用到了委派模式 场景:老板给项目经理分配任务,项目经理会根据实际情况给每个员工分派任务,待员工把任务完成后,再由项目经理向老板汇报结果 public interface IEmployee { pu...原创 2020-04-19 20:43:20 · 127 阅读 · 0 评论 -
软件价架构设计原则
1.开闭原则: 一个软件实体(如类,模块或函数)应该是对拓展开发,对修改关闭,开闭原则是面向对象设计中最基础的设计原则 如:版本更新,尽可能不修改源代码,但是可能增加功能 2.依赖倒置原则: 设计代码时,高层模块不应该依赖底层模块,二者都应该依赖其抽象,抽象不应该依赖细节,细节应该依赖抽象。通过依赖倒置,可以减少类与类之间的耦合性,提高系统的稳定性,提高代码的可读性和维护性,并且能够降低修...原创 2020-03-17 23:38:26 · 98 阅读 · 0 评论 -
二:工厂模式详解
Spring就是一个把设计模式用得淋漓尽致的经典框架:工厂模式,装饰器模式,代理模式,委派模式,策略模式,适配器模式,模板模式,观察者模式 工厂模式详解 简单工厂模式(Simple Factory Pattern)是指由一个工厂对象决定创建出哪一种产品类的实例,但它不属于GOF 23种设计模式。简单工厂适用于工厂类负责创建的对象较少的场景,且客户端只需要传入工厂类的参数,对于如何创建对象的逻辑...原创 2020-04-09 00:28:22 · 131 阅读 · 0 评论 -
三:单例设计模式详解
单例模式是指确保一个类在任何情况下都绝对只有一个实例,并且提供一个全局访问点。 J2EE标准中的ServlentContext,SerlentContextConfig等,Spring框架应用中的ApplicationContext,数据库的连接池等也是单例形式 单例分为饿汉式和懒汉式 饿汉式:在类加载的时候就立即初始化,并且创建单例对象,绝对是线程安全的,在线程还没有出现前就实例化了 ...原创 2020-04-11 17:33:38 · 92 阅读 · 0 评论 -
四:原型模式详解
原型模式:是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象,属于创建型模式 原型模式的核心在于拷贝原型对象。以系统中已存在的一个对象为原型,直接基于内存二进制流进行拷贝,无需再经历耗时的对象初始化过程(不调用构造函数),性能提升许多。当对象的构建过程比较耗时时,可以利用当前系统中已存在的对象作为原型,对其进行克隆(一般是基于二进制流的复制),躲避初始化过程,使得新对象的创建时间大...原创 2020-04-13 00:22:15 · 233 阅读 · 0 评论 -
五:代理模式详解
动态代理:是指为其他对象提供一种代理,以控制对这个对象的访问。代理对象在客户端和目标对象之间起到中介作用,代理模式属于结构型设计模式。代理分为静态代理和动态代理 1.静态代理 ...原创 2020-04-16 23:04:34 · 107 阅读 · 0 评论