当前位置: 首页 > news >正文

建设网站要什么资料经典软文案例分析

建设网站要什么资料,经典软文案例分析,成都网站营销,开发公司虚列成本文章目录 前言一、Spring是什么1.IoC 容器 —— 容器2.IoC 容器 —— IoC传统程序开发控制反转式程序开发 3.Spring IoC 二、DI是什么总结 前言 本人是一个普通程序猿!分享一点自己的见解,如果有错误的地方欢迎各位大佬莅临指导,如果你也对编程感兴趣的话,互关一下…

文章目录

  • 前言
  • 一、Spring是什么
    • 1.IoC 容器 —— 容器
    • 2.IoC 容器 —— IoC
      • 传统程序开发
      • 控制反转式程序开发
    • 3.Spring IoC
  • 二、DI是什么
  • 总结


前言

本人是一个普通程序猿!分享一点自己的见解,如果有错误的地方欢迎各位大佬莅临指导,如果你也对编程感兴趣的话,互关一下,以后互相学习,共同进步。这篇文章能够帮助到你的话,劳请大家点赞转发支持一下!


一、Spring是什么

我们通常所说的 Spring 指的是 Spring Framework(Spring 框架) ,它是⼀个开源框架。Spring 支持⼴泛的应用场景,它可以让 Java 企业级的应用程序开发起来更简单。

用⼀句话概括 Spring:Spring 是包含了众多⼯具方法的 IoC 容器


1.IoC 容器 —— 容器

容器是⽤来容纳某种物品的(基本)装置。

书包是用来容纳书本的容器。
在这里插入图片描述
水杯是用来容纳水的容器。在这里插入图片描述
衣柜是用来容纳衣服的容器。
在这里插入图片描述
所以,容器就是用来容纳 / 存储某些东西的

像数据结构中的, 顺序表,链表,栈,队列,二叉树,哈希表等结构也是容器 ,只不过 这些容器存储的是数据

IoC容器,存储的是 “对象” (Java中的实例化对象)。


2.IoC 容器 —— IoC

IoC = Inversion of Control 翻译成中⽂是“控制反转”的意思,也就是说 Spring 是⼀个“控制反转”的容器

控制反转,指的是控制权反转。

Java程序中对象的生命周期
不再由程序猿(代码片段)来控制
而是将 控制权反转
Spring(Spring容器/IoC容器)来控制


假设我们让程序来创建一台电脑。

传统程序开发

电脑(Computer)依赖CPU(Cpu),有CPU才能有电脑。
CPU依赖主板(Mainboard),有主板才能有CPU。
主板依赖电源(Power),有电源才能有主板。

在这里插入图片描述

public class Computer {public void init() {// 电脑依赖CPUCpu cpu = new Cpu();cpu.init();System.out.println("电脑创建成功");}
}class Cpu {public void init() {// CPU依赖主板Mainboard mainboard = new Mainboard();mainboard.init();System.out.println("CPU创建成功");}
}class Mainboard {// 主板依赖电源public void init() {Power power = new Power();power.init();System.out.println("主板创建成功");}
}class Power {private int size = 800;public void init() {System.out.println(size + "W电源创建成功");}
}
class Main {public static void main(String[] args) {Computer computer = new Computer();computer.init();}
}

在这里插入图片描述
以上程序中,CPU,主板,电源都是写死的,如果客户想要定制,假设客户想要定制一个特殊规格的电源。


修改后代码

public class Computer {public void init(int size) {// 电脑依赖CPUCpu cpu = new Cpu();cpu.init(size);System.out.println("电脑创建成功");}
}class Cpu {public void init(int size) {// CPU依赖主板Mainboard mainboard = new Mainboard();mainboard.init(size);System.out.println("CPU创建成功");}
}class Mainboard {// 主板依赖电源public void init(int size) {Power power = new Power(size);power.init();System.out.println("主板创建成功");}
}class Power {private int size;public Power(int size) {this.size = size;}public void init() {System.out.println(size + "W电源创建成功");}
}class Main {public static void main(String[] args) {Computer computer = new Computer();computer.init(1200);}
}

在这里插入图片描述

这样的传统开发代码耦合程度很高,当最底层代码改动之后,整个调用链上的所有代码都需要修改。


控制反转式程序开发

我们可以尝试 不在每个类中自己创建下级类 ,如果自己创建下级类就会出现当下级类发⽣改变操作,自己也要跟着修改。此时,我们只需要 将原来由自己创建的下级类,改为传递的⽅式(也就是注⼊的⽅式) ,因为我们不需要在当前类中创建下级类了,所以下级类即使发生变化(创建或减少参数),当前类本身也无需修改任何代码,这样就完成了程序的解耦。

基于以上思路,我们把调用汽车的程序示例改造⼀下,把创建子类的方式,改为注入传递的方式,具体实现代码如下:

public class Computer {private Cpu cpu;public Computer(Cpu cpu) {this.cpu = cpu;}public void init() {// 电脑依赖CPUcpu.init();System.out.println("电脑创建成功");}
}class Cpu {private Mainboard mainboard;public Cpu(Mainboard mainboard) {this.mainboard = mainboard;}public void init() {// CPU依赖主板mainboard.init();System.out.println("CPU创建成功");}
}class Mainboard {// 主板依赖电源private Power power;public Mainboard(Power power) {this.power = power;}public void init() {power.init();System.out.println("主板创建成功");}
}class Power {private int size;public Power(int size) {this.size = size;}public void init() {System.out.println(size + "W电源创建成功");}
}class MyContainer {public Power power;public Mainboard mainboard;public Cpu cpu;public Computer computer;public MyContainer() {this.power = new Power(1200);this.mainboard = new Mainboard(power);this.cpu = new Cpu(mainboard);this.computer = new Computer(cpu);}public Computer getComputer() {return computer;}
}class Main {public static void main(String[] args) {MyContainer mycontainer = new MyContainer();mycontainer.getComputer().init();}
}

我们可以看到传统程序开发中 由最高级的类,依次创建了需要的类。

而改进之后的 控制权反转 ,我们把控制权交给了容器Mycontainer后, 不再是上级对象创建并控制下级对象了 ⽽是下级对象把注⼊将当前对象中 下级的控制权不再由上级类控制了,这样即使下级类发⽣任何改变,当前类都是不受影响的 这就是典型的控制反转,也就是 IoC 的实现思想

代码经过以上调整,无论底层类如何变化,整个调用链是不用做任何改变的,这样就完成了代码之间的解耦,从而实现了更加灵活、通用的程序设计了。


3.Spring IoC

文章开头提到过:Spring 是包含了多个⼯具方法的 IoC 容器,这就是对Spring 最核心的总结。

Spring 是⼀个 IoC(控制反转) 容器, IoC 代表的是对象的创建和销毁的权利都交给 Spring 来管理了

Spring 是⼀个 IoC容器, “容器”二字代表的是它具备两个最基础的功能:

  • 将对象存入到容器
  • 从容器中取出对象

这两个功能也是Spring最核心的功能。

将对象存储在容器中的好处
将对象放到容器中呢,就类似于线程池。
线程池会提前帮你创建好线程存在线程池中,你要用的时候拿就行,用完再放回来。
容器也是如此,帮你创建好对象就放在容器里,你用就拿,用完就换回来。
而普通程序开发则是要用的时候才创建对象,用完就销毁。


二、DI是什么

DI 是 Dependency Injection 的缩写,翻译成中⽂是“依赖注入”的意思。

所谓依赖注入,就是 由 IoC 容器在运⾏期间,动态地将某种依赖关系注入到对象之中 。所以,依赖注入(DI)和控制反转(IoC)是从不同的角度的描述的同⼀件事情,就是指通过引入 IoC 容器,利用依赖关系注入的方式,实现对象之间的解耦。

也就是说,比如说我要创造一台电脑,在创建过程中。
我现在需要主板,我就动态的去容器中拿主板,注入到电脑中去。
这个过程就称之为依赖注入。


总结

以上就是今天要讲的内容,本文介绍了Spring是什么,要开启框架Spring的学习了。

路漫漫不止修身,也养性。

http://www.hkea.cn/news/163179/

相关文章:

  • 我有一个域名怎么做网站百度一下下载
  • 郑州网站建设品牌好安装百度到桌面
  • 株洲做网站定制百度灰色词优化排名
  • 上海网页设计公司兴田德润电话排名优化外包公司
  • 做360网站优化快推广普通话宣传语手抄报
  • 动态网站开发语言有哪些大学生创新创业大赛
  • 关键词推广公司网站网络排名优化方法
  • 福州移动网站建设网络营销推广工具有哪些
  • win2008sr怎么用iis做网站国外网站加速
  • 合肥++网站建设磐石网站seo
  • 万网主机怎么上传网站如何在百度上投放广告
  • 做网站时如何给文字做超链接全球疫情最新数据消息
  • 四川省住建厅官方网站3分钟搞定网站seo优化外链建设
  • 做网站阳泉巨量千川广告投放平台
  • 温岭哪里有做网站的如何自制网站
  • 知道创于 wordpress搜索引擎优化宝典
  • 乌兰县wap网站建设公司有效获客的六大渠道
  • 微信网站开发教程视频教程百度一下主页官网
  • 网站开发专业前景关键词挖掘排名
  • 网站开发属于什么职位类别seo查询站长工具
  • wordpress postmetaseoul national university
  • 商务网站的主要存在形式杭州百度快照优化公司
  • 个人备案网站做购物网站可以不班级优化大师免费下载电脑版
  • 贸易网站建设互联网广告代理加盟
  • 深圳网站建设网络公司河北关键词排名推广
  • 在工商网上怎么注册公司seo优化博客
  • 免费的小程序怎么赚钱历下区百度seo
  • 河北石家庄最新疫情最新消息优化防疫政策
  • 一站式做网站哪家强新闻小学生摘抄
  • 江西南昌网站建设公司哪家好谷歌google 官网下载