Spring框架概述
Spring的作用
容器管理框架,即维护、管理Spring组件,管理bean的直接依赖关系,这样实现了应用解耦
举个例子,在商品的Dao中,首先我们需要获取Dao组件,然后调用Dao组件中的方法来进行业务的实现(增删改查)
那么,我们是怎么获取Dao组件呢?
一般来说,我们使用New来对dao进行实例化,来获取Dao组件
这是一个普通的Dao(数据持久类)
public class NewsDao {
public void save() {
System.out.println("NewsDao保存操作");
}
}
如果要在业务层调用数据持久类,我们需要在业务类中手动new一个实例
public class NewsService {
NewsDao newsDao = new NewsDao();
public void save() {
System.out.println("NewsService保存操作");
newsDao.save();
}
}
如果要调用业务层的save方法,则测试代码如下:
public static void main(String[] args) {
NewsService newsService =new NewsService();
newsService.save();
}
Spring的作用就是把new的实例化过程,由容器管理框架(Spring)进行管理,管理它的生命周期(这只是个例子,只举了“创建”的例子,实际上整个生命周期都是由容器管理器进行管理)
生命周期:创建、初始化、销毁
组件:组件就是Bean。在MVC实现中,模型和控制器都是一个普通的Java类,同样的Dao、Service、控制器、工具类等,都叫组件
Spring是什么
狭义Spring
Spring框架体系组件,即AOP、ORM、DAO、Web**、**Context、WebMVC、Core
广义Spring
七个模块
Spring Core:核心模块、(IoC)Bean工厂,创建对象
- AOP:面向方面编程(代理设计模式)
- DAO:数据访问模块,我们一般直接使用ORM持久框架
- SpringMVC:我们现在用的是Servlet实现MVC,实际上SpringMVC的底层还是Servlet
- Context:与Bean工厂配合,获取上下文:
- ORM:支持ORM框架的模块
广义Spring
Spring生态体系
比如移动端Springboot、微服务SpringCloud等等
Spring的特点:不断吸收优势框架
Spring的核心
IOC:控制反转
AOP:面向切面编程