> 文档中心 > 【spring框架技术】5天教你学会【第①天】

【spring框架技术】5天教你学会【第①天】


【spring框架技术】五天教你学会 —【第一天】

文章目录

  • 【spring框架技术】五天教你学会 —【第一天】
  • 一、IOC的理解:
  • 二、我们真针对有无spring进行对比
  • 三、环境搭建
  • 四、在web项目下实现ioc控制反转
  • 五、不同获取ioc容器方式的对比结论:
  • 结论:

在这里插入图片描述


一、IOC的理解:

在这里插入图片描述
在这里插入图片描述

–Java 爪哇岛 java
–Bean: 咖啡豆
–面向对象:咖啡豆
–javaBean java的咖啡豆 就是java里的实体类

二、我们真针对有无spring进行对比

在这里插入图片描述

证明spring里面已经有了单例,所谓的消除单例,是说单例模式在我们Srping里已经实现了,不用我们再自己去写了!

证明方法,我们对一个对象使用不同的名字,他们指向同一个地址,这样就是单例的表现。

三、环境搭建

在这里插入图片描述
1、applicationContext.xml配置文件
在这里插入图片描述
在这里插入图片描述

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import  sslssl._create_default_https_context = ssl._create_unverified_context

四、在web项目下实现ioc控制反转

将bean在applicationContext.xml文件中new,然后注入到UserService,从而实现web端 的调用。
代码如下(示例):
在这里插入图片描述

最终我们发现,获取applicationContext.xml文件是非常重要的事情:
我们在获取这个文件的时候,其实有三种方法:
① BeanFactory

在这里插入图片描述
②:ClassPathXmlApplicationContext

在这里插入图片描述
③:WebApplicationContext (web端获取方法)

<context-param>    <param-name>contextCofingLocation</param-name>    <param-value>classpath:applicationContext.xml</param-value>  </context-param>  <listener>    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  </listener>  //文件要放到WEB-INF/目录下。

五、不同获取ioc容器方式的对比结论:

ApplicationContext–方式获取ioc容器:

1.获取的时候就完成了所有的bean的实例化(new 对象)2.在解析.xml文件时,完成了.xml文件的校验,可以断定文件是否有错。(稳定)

在这里插入图片描述

BeanFactory–方式获取ioc容器:

1.在获取或解析.xml文件时,不会实例化里面的bean,而是使用谁就实例化谁(懒加载,延迟加载)2.在解析.xml文件时,不校验.xml文件的校验。 (可能有有bean出错的风险)

在这里插入图片描述

结论:

推荐ApplicationContext–方式获取ioc容器 ,除非你对内存要求特别苛刻。