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

萧山网站建设xssemwordpress 做用户登录

萧山网站建设xssem,wordpress 做用户登录,广告设计创意,系统app定制开发文章目录一、Spring 是什么1.1 什么是容器1.2 什么是 IoC二、开发案例对比2.1 传统程序开发2.2 控制反转式程序开发2.3 对⽐总结规律三、理解 Spring IoC四、DI 概念说明五、总结一、Spring 是什么 我们通常所说的 Spring 指的是 Spring Framework#xff08;Spring 框架Spring 框架它是⼀个开源框架有着活跃⽽庞⼤的社区这就是它之所以能⻓久不衰的原因。Spring ⽀持⼴泛的应⽤场景它可以让 Java 企业级的应⽤程序开发起来更简单 ⽤⼀句话概括 Spring Spring 是包含了众多⼯具⽅法的 IoC 容器 那问题来了什么是容器什么是 IoC 容器 众多方法我们后面再了解 1.1 什么是容器 容器是⽤来容纳某种物品的基本装置——百度百科 之前课程我们接触的容器有哪些 List/Map - 数据存储容器Tomcat - Servlet 容器 1.2 什么是 IoC Spring 也是⼀个容器Spring 是什么容器呢Spring 是⼀个 IoC 容器 什么是 IoC IoC Inversion of Control 翻译成中⽂是“控制反转”的意思也就是说 Spring 是⼀个“控制反转”的容器怎么理解这句话呢如下分析 二、开发案例对比 2.1 传统程序开发 假如我们现在构建⼀辆“⻋”的程序我们的实现思路是这样的 构建⼀辆⻋Car Class然⽽⻋需要依赖⻋身(FrameWork Class)⽽⻋身需要依赖底盘BottomClass⽽底盘需要依赖轮胎Tire Class最终程序的实现代码如下 public class NewCarExample {public static void main(String[] args) {Car car new Car();car.init();}/*** 汽⻋对象*/static class Car {public void init() {// 依赖⻋身Framework framework new Framework();framework.init();}}/*** ⻋身类*/static class Framework {public void init() {// 依赖底盘Bottom bottom new Bottom();bottom.init();}}/*** 底盘类*/static class Bottom {public void init() {// 依赖轮胎Tire tire new Tire();tire.init();}}/*** 轮胎类*/static class Tire {// 尺⼨private int size 30;public void init() {System.out.println(轮胎尺⼨ size);}} }传统程序开发的缺陷 以上程序中轮胎的尺⼨的固定的然⽽随着对的⻋的需求量越来越⼤个性化需求也会越来越多这时候我们就需要加⼯多种尺⼨的轮胎那这个时候就要对上⾯的程序进⾏修改了修改后的代码如下所示 public class NewCarUpdateExample {public static void main(String[] args) {Car car new Car(20);car.run();}/*** 汽⻋对象*/static class Car {private Framework framework;public Car(int size) {framework new Framework(size);}public void run() { // 依赖⻋身framework.init();}}/*** ⻋身类*/static class Framework {private Bottom bottom;public Framework(int size) {bottom new Bottom(size);}public void init() { // 依赖底盘bottom.init();}}/*** 底盘类*/static class Bottom {private Tire tire;public Bottom(int size) {tire new Tire(size);}public void init() { // 依赖轮胎tire.init();}}/*** 轮胎类*/static class Tire {// 尺⼨private int size;public Tire(int size) {this.size size;}public void init() {System.out.println(轮胎尺⼨ size);}} }从以上代码可以看出以上程序的问题是当最底层代码改动之后整个调⽤链上的所有代码都需要修改 解决传统开发中的缺陷 我们可以尝试不在每个类中⾃⼰创建下级类如果⾃⼰创建下级类就会出现当下级类发⽣改变操作⾃⼰也要跟着修改。此时我们只需要将原来由⾃⼰创建的下级类改为传递的⽅式也就是注⼊的⽅式因为我们不需要在当前类中创建下级类了所以下级类即使发⽣变化创建或减少参数当前类本身也⽆需修改任何代码这样就完成了程序的解耦 PS解耦指的是解决了代码的耦合性耦合性也可以换⼀种叫法叫程序相关性。好的程序代码的耦合性代码之间的相关性是很低的也就是代码之间要实现解耦.这就好⽐我们打造⼀辆完整的汽⻋如果所有的配件都是⾃⼰造那么当客户需求发⽣改变的时候⽐如轮胎的尺⼨不再是原来的尺⼨了那我们要⾃⼰动⼿来改了但如果我们是把轮胎外包出去那么即使是轮胎的尺⼨发⽣变变了我们只需要向代理⼯⼚下订单就⾏了我们⾃身是不需要出⼒的 2.2 控制反转式程序开发 基于以上思路我们把调⽤汽⻋的程序示例改造⼀下把创建⼦类的⽅式改为注⼊传递的⽅式具体实现代码如下 public class IocCarExample {public static void main(String[] args) {Tire tire new Tire(20);Bottom bottom new Bottom(tire);Framework framework new Framework(bottom);Car car new Car(framework);car.run();}static class Car {private Framework framework;public Car(Framework framework) {this.framework framework;}public void run() {framework.init();}}static class Framework {private Bottom bottom;public Framework(Bottom bottom) {this.bottom bottom;}public void init() {bottom.init();}}static class Bottom {private Tire tire;public Bottom(Tire tire) {this.tire tire;}public void init() {tire.init();}}static class Tire {private int size;public Tire(int size) {this.size size;}public void init() {System.out.println(轮胎 size);}} }代码经过以上调整⽆论底层类如何变化整个调⽤链是不⽤做任何改变的这样就完成了代码之间的解耦从⽽实现了更加灵活、通⽤的程序设计了 2.3 对⽐总结规律 在传统的代码中对象创建顺序是Car - Framework - Bottom - Tire 改进之后解耦的代码的对象创建顺序是Tire - Bottom - Framework - Car 我们发现了⼀个规律通⽤程序的实现代码类的创建顺序是反的传统代码是 Car 控制并创建了FrameworkFramework 创建并创建了 Bottom依次往下⽽改进之后的控制权发⽣的反转不再是上级对象创建并控制下级对象了⽽是把下级对象注⼊将当前对象中下级的控制权不再由上级类控制了这样即使下级类发⽣任何改变当前类都是不受影响的这就是典型的控制反转也就是 IoC 的实现思想 三、理解 Spring IoC 回到我们的主题Spring本⽂刚开始咱们就讲Spring 是包含了多个⼯具⽅法的 IoC 容器这就是对 Spring 最核⼼的总结。“集成多个⼯具⽅法”这事咱们以后慢慢再讲那如何理解“Spring 是⼀个 IoC容器”这句话呢 既然 Spring 是⼀个 IoC控制反转容器重点还在“容器”⼆字上那么它就具备两个最基础的功能 将对象存⼊到容器从容器中取出对象 也就是说学 Spring 最核⼼的功能就是学如何将对象存⼊到 Spring 中再从 Spring 中获取对象的过程 将对象存放到容器中的好处将对象存储在 IoC 容器相当于将以后可能⽤的所有⼯具制作好都放到仓库中需要的时候直接取就⾏了⽤完再把它放回到仓库。⽽ new 对象的⽅式相当于每次需要⼯具了才现做⽤完就扔掉了也不会保存下次再⽤的时候还得重新做这就是 IoC 容器和普通程序开发的区别 Spring 是⼀个 IoC 容器说的是对象的创建和销毁的权利都交给 Spring 来管理了它本身⼜具备了存储对象和获取对象的能⼒ 四、DI 概念说明 说到 IoC 不得不提的⼀个词就是“DI”DI 是 Dependency Injection 的缩写翻译成中⽂是“依赖注 ⼊”的意思。 所谓依赖注⼊就是由 IoC 容器在运⾏期间动态地将某种依赖关系注⼊到对象之中。所以依 赖注⼊DI和控制反转IoC是从不同的⻆度的描述的同⼀件事情就是指通过引⼊ IoC 容 器利⽤依赖关系注⼊的⽅式实现对象之间的解耦 IoC 是“⽬标”也是⼀种思想⽽⽬标和思想只是⼀种指导原则最终还是要有可⾏的落地⽅案⽽ DI 就属于具体的实现 ⽐如说我今天⼼情⽐较好吃⼀顿好的犒劳犒劳⾃⼰那么“吃⼀顿好的”是思想和⽬标是 IoC 但最后我是吃海底捞还是杨国福这就是具体的实现就是 DI 五、总结 Spring 是什么如何理解 Spring IoC 和 DI 是啥有什么区别 Spring 最核⼼的功能是啥
http://www.hkea.cn/news/14472797/

相关文章:

  • 单页面的网站模板免费下载网站建设方案文档
  • 游戏网站开发毕业设计先做网站还是做APP
  • 平面排版网站做ppt到哪个网站找图片
  • 5000元网站seo推广做word文档什么网站好
  • 玉环做网站找那家公司帝国做的网站怎么上传
  • 网站工作沟通及建设网站建设需求调研问卷
  • 扬中网站建设哪家好百度识图在线使用一下
  • wordpress网站前端怎么做卡盟网站
  • 济南建站联系企汇优移动网站开发百度百科
  • 加强文明网站建设棋牌游戏网站建设费用
  • 网站开发商可以代刷好评吗网站 入站规则 设置
  • 男男做的视频网站好重庆seo霸屏
  • dw做的网站如何上传图片北京网络维护公司
  • 视频直播类网站开发难度大庆油田内网主页网址
  • 宝山网站建设哪家好网络优化器免费
  • 开封网站建设-中企动力网站建设知识问答
  • 做网站用什么框架好做网站开发需要的笔记本配置
  • 网站开发案例pdf爱链接
  • 做网站为什么要用php制作网页软件下载
  • 几级分销属于合法百度seo工具
  • 想自己做衣服上哪个网站学网站备案幕布多少钱
  • 电商网站开发文献汇总公司网站建设上海
  • 做网站必须在工信部备案吗机票网站建设
  • 网站建设与维护教学课件箱包外贸订单网
  • 给客户做网站需要付法律责任吗百度一下网址大全
  • 免费自助建站系统平台 贴吧铜川新区网站建设招标
  • seo哪里可以学seo推广哪家服务好
  • 报送举报网站建设情况电商平台制作公司
  • 钟落潭有没有做网站的网站流量 seo
  • 在哪个网做免费网站好邯郸做网站找哪家好