Spring & Spring MVC 2. Hello Spring 5

从这一篇,我们就开始学习 Spring 5 了,希望各位抓紧方向盘,开车了。

一、Hello Spring

我们第一篇先来写一个 HelloWorld,用一用这个 Spring。

这里我们给大家一下 Spring 的下载地址,因为 Spring 官网改了,以前一下子就找到了,现在费劲死了,不是很好找下载路径,所以我就直接提供了。

https://repo.spring.io/webapp/#/artifacts/browse/tree/General/libs-release-local/org/springframework/spring

打开之后一直往下滑,可以看到,我现在最高版本是 5.3.4,(我打开的时候的日期是:2021-03-08)

废话不多说,我们就使用这个 5.3.8 版本。

自己点击下载一下。(70 多兆,自己弄个迅雷,很快就下载好了)

解压之后,里面有这些东西

docs 就是文档,libs 就是一会我们要用到的一些 jar 包,剩下的自己研究。

我们打开 eclipse,创建一个 spring_test 的 Java Project 的项目。

然后创建 lib 目录,将 jar 包拷贝到里面,再添加到项目构建路径中。

接着,我们再去弄个配置文件。配置文件我们去 docs 找

打开,点击 core,接着往下翻。

这个就是我们的核心配置文件了,复制一下,然后在我们项目的 src 目录下创建一个 xml,我们取名字叫 beans.xml,这里要说一下,这个名字可以随意,你也可以叫 lemon1234.xml

然后我们创建一个类,HelloSpring,顺便写一个方法

然后我们写一个测试类进行调用。

很简单哈,现在我们来使用 Spring 将我们的 HelloSpring 这个类进行管理,让 Spring 管理 HelloSpring 的生命周期。来看看怎么写哈

我们继续往下翻文档,找到 1.2.3. Using the Container

我们按照这个去写一下。

写好之后还不行,我们还需要配置一下我们的 xml 文件。

这里要注意一下,我们的这个 id 一定要是全局唯一的,不了就会报错,配置好之后,我们执行以下程序。

OK,这样我们就做完了 HelloSpring。

二、Spring IoC 容器

Spring 容器是 Spring 框架的核心。容器将创建对象,把它们连接在一起,配置它们,并管理他们的整个生命周期从创建到销毁。

Spring 中最简单的容器:BeanFactory,它主要的功能就是提供依赖注入的支持。(BeanFacotry 是一个接口)

在 Spring 中,有大量对 BeanFactory 接口的实现。其中,最常被使用的是 XmlBeanFactory 类。这个容器从一个 XML 文件中读取配置元数据,由这些元数据来生成一个被配置化的系统或者应用。

在资源宝贵的移动设备或者基于 applet 的应用当中, BeanFactory 会被优先选择。否则,一般使用的是 ApplicationContext,除非你有更好的理由选择 BeanFactory。

然后我们再来说说这个 ApplicationContext,这个 ApplicationContext 是 BeanFactory 的子接口,也被称为 Spring 上下文。

Application Context 是 spring 中较高级的容器。和 BeanFactory 类似,它可以加载配置文件中定义的 bean,将所有的 bean 集中在一起,当有请求的时候分配 bean。 另外,它增加了企业所需要的功能,比如,从属性文件中解析文本信息和将事件传递给所指定的监听器。

ApplicationContext 包含 BeanFactory 所有的功能,一般情况下,相对于 BeanFactory,ApplicationContext 会更加优秀。当然,BeanFactory 仍可以在轻量级应用中使用,比如移动设备或者基于 applet 的应用程序。

我们以后就是使用这个 ApplicationContext 来操作 Bean。

三、Bean

我们都知道,一个程序得有很多很多的对象、方法、Util 等组成,我们的 Spring 主要就是管理这些个对象、方法、Util 的一个容器。

好比我们上面例子中的 HelloSpring 这个类。最后就被当做一个 Bean 让我们的 Spring 容器管理起来了。

顺便提一嘴,每一个 Bean 都有一个唯一的 id,在同一个 Spring IoC 中,只会存在一个 id 为 hello 的,不可能会有第二个。

而且啊,这个 Bean 不仅仅就像我们的 HelloSpring 那么简单,它里面还有很多的属性,这个我们后面都会去说的。

好了,这一篇就先到这里,先看着,慢慢消化。

各位,还有一件事,我的官网要准备从新制作,有没有什么好的提议,用什么框架,有什么功能,欢迎各位小伙伴提供~~~(直接评论在评论区即可,我到时候会整理起来)

猜你喜欢

转载自blog.csdn.net/weixin_45908370/article/details/114540259