目录
创建Spring项目
1.创建Maven项目
这样一个Maven项目就初始化好了.
2.添加Spring依赖
在添加依赖之前,我们要先配置好Maven的国内源.
Maven国内源配置
当添加依赖的时候,默认是从Maven的国际仓库下载的,但从国外下载,很容易出现因为网络而导致的错误.所以我们要配置国内源,从国内的镜像网站下载依赖.
idea设备文件
idea设置文件有两个,一个是当前项目的配置文件,另一个是新项目的配置文件,只有将两个文件都配置成国内源,才有效.
先不要点ok,要先配置settings.复制好路径,再此电脑中复制查看.
在这个目录下,会有两种结果,一种是有settings.xml,但是这个是原始的settings,还没有配置国内源,另一种是没有settings.xml文件,此时只需要将现成的配置好的文件复制到此目录中.
如果已经有了settings.xml,不能直接将配置好的setting.xml覆盖到此目录下.
此时我们右键打开(建议使用 vs code打开),再里面找到mirrors标签,如果没有配置过,默认是空的,此时将阿里的镜像地址复制到此标签中.
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
配置好之后,再返回idea点击ok.
配置好当前项目的国内源后,再按照相同的方式配置新项目的国内源.
如果已经出现了jar包下载失败的情况,再来配置国内源,此时我们配置好之后,要把之前所下载到本地仓库的jar包全部删除掉,然后在点击reload,重新下载.
这样做的原因是reload只会扫描到还没有下载的jar包,如果有的jar包由于之前的网络原因只下载了一半,点击reload是不会继续下载的,会默认这个下载一半的jar包已经下载完毕了.
配置好国内源之后,我们从Maven仓库下载依赖.
选择5.x版本即可.不要选择6版本,6版本要求jdk最低版本是17,而我们使用的jdk8.
复制后,粘贴到pom.xml中.
点击reload,下载依赖的jar包.
看到外部库里,有了依赖,就可以了.
3.创建一个启动类
到此为止,Spring项目已经创建好了.
将Bean对象存储到Spring容器当中
1.创建一个Bean
(在java中,一个对象如果被使用多次,就可以称之为Bean)
2.将Bean存储到Spring容器当中
依赖于xml,通过spring的配置文件,将Bean注册到容器中.
在resources中新建文件
Spring 配置⽂件的固定格式为以下内容
粘贴复制即可.
此时就可以在beans标签内,将我们的bean注册到Spring容器中.
完成这一步后,我们的bean就已经存储到spring中了.
从Spring容器中读取到Bean
1.得到Spring(上下文)对象
得到 Spring 上下⽂对象,因为对象都交给 Spring 管理了,所以获取对象要从 Spring 中获取,那
么就得先得到 Spring 的上下⽂。
除了 ApplicationContext 之外,我们还可以使⽤ BeanFactory 来作为 Spring 的上下⽂.
ApplicationContext 和 BeanFactory 效果是⼀样的,ApplicationContext 属于 BeanFactory 的⼦
类,它们的区别如下:
继承关系和功能⽅⾯来说:Spring 容器有两个顶级的接⼝:BeanFactory 和 ApplicationContext。其中 BeanFactory 提供了基础的访问容器的能⼒,⽽ ApplicationContext 属于 BeanFactory 的⼦类,它除了继承了 BeanFactory 的所有功能之外,它还拥有独特的特性, 还添加了对国际化⽀持、资源访问⽀持、以及事件传播等⽅⾯的⽀持.
从性能⽅⾯来说:ApplicationContext 是⼀次性加载并初始化所有的 Bean 对象,⽽ BeanFactory 是需要那个才去加载那个,因此更加轻量.
2.从Spring中获取到Bean对象
3.使用Bean对象
总结:
1.创建 Spring 项目
- a.创建一个 maven 项目
- b.添加 spring-context 依赖
- c.创建一个启动类(作用:为后面从 spring 容器中获取 bean 做准备)
2.存储 Bean
- a.先创建 Bean 对象
- b.通过 spring 配置文件 (spring-config.xml)<bean id="bean名称”class="包名+类名"></bean)
3.读取 Bean
- a.得到 Spring 对象 (ApplicationContext、BeanFactory)
- b.通过 Spring 对象 getBean 方法获取到 Bean 对象[DI 操作]
- c.非必须,使用 Bean