Spring的介绍
什么是spring?
- Spring是2003年在国外兴起的一个Java轻量级框架。它是了为解决企业级开发的复杂性而创建的一个框架。其是一个分层的Java SE/EE Full-Stack(一站式)框架。
- Spring是一个容器,负责管理整个应用中所有的Bean的生命周期,及Bean之间的依赖关系。
springFramework的体系结构
spring的下载
spring官网没有提供直接下载的链接,我们可以按照以下步骤下载spring框架,https://jingyan.baidu.com/article/2fb0ba40829e0b00f2ec5f83.html,我这里不在做详细的介绍。
或者直接点击此链接下载5.1.0版本的spring框架https://repo.spring.io/release/org/springframework/spring/5.1.0.RELEASE/
下面介绍以下关于spring框架jar包的目录结构
spring的核心技术
- IoC
- AOP
- spring-tx
- spring-jdbc
- spring与dao
什么是IoC?
IoC,Inversion of Control,控制反转。将原本由代码操纵的对象操控权,交由第三方容器,即反转给了第三方容器。这种对象的依赖关系管理方式,称为IoC。
IoC是一种思想,是一个概念。其实现方式很多,较著名的有两种:
DL:Dependency Lookup,依赖查找。其典型应用是JNDI。Java Naming and Directory Interface,Java名称与服务接口。其实JNDI,就是一个第三方的容器。
DI:Dependency Injection,依赖注入。是目前最优秀的解耦方式。其典型应用是Spring。
spring中的IoC
spring容器管理Bean的生命周期,即将所有需要的Bean在xml文件中进行注册,并将需要的属性设置给Bean
Bean的装配
简单来说,就是对象的创建。容器根据代码的要求,创建好对象后,再将对象传递给代码的过程,就是Bean的装配。
介绍到这里大家可能还对spring很模糊,那么我们来写第一个spring程序,来进一步的了解spring
- 首先,创建一个java工程
- 我们在下载好的spring框架中打开lib目录,导入spring容器的核心jar包
spring-beans
spring-core
spring-context
spring-expression
- 下一步,创建一个接口,我这里创建一个car,里边写一个drive方法
- 写一个实现类,实现car接口中的方法
- 创建测试类,Junit测试
- 下面的我们的对象要交给spring容器来管理了
- 首先我们需要在spring容器的配置文件中进行注册该Bean
- spring使用的配置文件为xml文件,当然需要引入约束文件,一般将spring的配置文件命名为applicationContext.xml
- spring的根元素是benas显然是注册Bean,子标签是Bean
- 下面我们注册carImpl
- id属性为了唯一确定一个对象,class属性里边应写类全名
- 注册完毕后我们要在测试类中获取spring容器
- spring容器获取的两种方式
- 调用spring容器的getBean方法获取carImpl,方法参数为bean的id
到这里spring入门程序就结束了,目前可能还没有体会到spring容器的优势,后期我们讲注入的时候大家就可以理解,spring对解耦合的作用