框架概述
所谓的框架其实就是程序的架子,在这个程序的架子中,搭建起程序的基本的骨架,针对程序的通用问题给出了便捷的解决方案,可以使开发人员 基于框架快速开发具体的应用程序。
常见的框架
-
SSH: Struts2 (Web层) / Spring (Service层) / Hibernate (DAO层)
-
SSM: SpringMVC (Web层) / Spring (Service层) / MyBatis (DAO层)
Spring框架概述
-
Spring是一个Service层的框架,可以整合许多其它框架进行工作。
-
Spring的主要技术是 IoC (DI) & AoP
- IoC (DI) — 控制反转 (依赖注入)
- AoP — 面向切面编程
Spring IoC
IoC (DI) — 控制反转 (依赖注入)
-
IoC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管理过程交由Spring框架来处理
-
开发过程中不再需要关注对象的创建和生命周期的管理,而是在需要时由Spring框架提供,这个由spring框架管理对象创建和生命周期的机制称之为控制反转
-
通过IoC + 接口,可以在软件分层实践中,将耦合性提取到Spring容器中进行管理。这样就可以实现软件分层中“高内聚,低耦合”目标中的低耦合了
创建配置文件 — applicationContext.xml 放置到源码目录下
在Idea中: 在src目录下右键 — >新建 — > XML Configuration File —> Spring Config
开发代码
创建一个类:
配置bean:
在程序中通过Spring容器获取对象并使用:
IoC的实现原理
- 初始化Spring容器,加载指定的配置文件,基于配置文件初始化Spring容器
- 当解析到配置文件中的
标签时,Spring容器根据该标签中的class属性指定的类的全路径名,通过反射创建该类的对象,并将该对象存入内置的Map中管理。其中键就是该标签的id值,值就是该对象。 - 当通过方法来从容器中获取对象时,其实就是根据传入的条件在内置的Map中寻找是否有匹配的键值,如果有则将该键值对中保存的对象返回,如果没有匹配到则抛出异常。
IoC获取对象的方式
通过context.getBean()方法获取bean时,可以通过如下两种方式获取:
-
传入id值
-
传入class类型
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!