简述:
Spring 是一个开源的轻量级 Java 开发框架,它旨在简化企业级应用程序的开发,提供了一种松耦合的方式来构建应用程序。
特点:
- 轻量级:核心小巧,资源占用少,适配不同运行环境,不会对系统造成过多负担。
- 控制反转(IoC)与依赖注入(DI):IoC 作为设计思想,把对象创建和依赖管理职责从应用代码转移到 Spring 容器;DI 则是 IoC 的具体实现,容器负责创建对象,并将依赖对象注入到目标对象中,大幅降低组件间耦合度,提高代码的可测试性与可维护性。
- 面向切面编程(AOP):将日志记录、事务管理等横切关注点与业务逻辑分离开,通过切面统一增强功能,避免业务代码的重复编写。
- 容器管理:Spring 容器负责对象的创建、初始化、销毁以及对象间依赖关系的管理,开发者只需专注于业务逻辑的实现。
- 多数据访问支持:对 JDBC、Hibernate、MyBatis 等多种数据访问技术提供支持,借助统一的数据访问抽象层,开发者切换数据访问技术时,无需大幅修改业务逻辑。
- 丰富插件扩展:Spring Boot 能快速搭建 Spring 应用,极大简化配置过程;Spring Cloud 则为构建微服务架构提供服务发现、配置管理等功能。
- 良好集成性:可以和 Struts、Hibernate、Junit 等众多框架实现无缝集成 。
然后博主再带着大家建立一下工程
添加如下依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.2.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.2.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>5.2.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jcl</artifactId>
<version>5.2.7.RELEASE</version>
</dependency>
再写一个配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd">
</beans>
IOC(控制反转)演示:
1.构造方法:基础方式要求被创建的对象,对应的类中必须要包含无参构造方法。
2.静态工厂方法: 通过建立工厂类,产生产品对象。(无需建立工厂类的对象)
3.普通工厂: 通过建立工厂类,产生产品对象。(需要建立工厂类的对象)