因为刚开始学习SSM,就先从最基本的Spring开始学起,并总结了一下Spring基本概念,以便了解。
框架就是工具
Spring
---是一个应用程序级别的轻量级框架,对企业级发展提供了一站式的服务
---是一个开源框架
Hibernate 操作数据库
Springmvc web开发MVC
详细介绍Spring
1) 轻量级框架
2) 容器可以装栽对象,实例化对象,配置对象之间的依赖关系
3) IOC/DI
- IOC的全称是:Inversion of Control(控制反转),是指程序之间的依赖关系由容器动态注入,而非硬编码实现
- DI的全称是:Dependency Injection(依赖注入),是指程序之间的信赖关系由容器动态注入,而非硬编码实现
4) 对持久层的支持
- Spring对持久层提供了良好的支持
- 封装了JDBC操作
- 集成了ORM技术框架
5) 对web层的支持
IOC容器简介
在Java里的类,在Spring中都被称为Bean,容器是用来读取Bean的定义、管理对象的初始化和生产、以及对象之间的依赖关系。BeanFactory、ApplicationContext
在Spring当中的IOC容器是由BeanFactory和ApplicationContext这两个接口来实现的。
ApplicationContext接口继承BeanFactory除了BeanFactory的功能之外还有如下功能:
---资源访问
---对国际化的支持
---对事件的支持
BeanFactory常用的方法
Object getBean(String name) :根据Bean标识获得Bean实例(常用)
Object getBean(String name, Class requiredType) :根据Bean标识获得Bean实例,并转换为指定的类型
- boolean containsBean(String name):判断当前BeanFactory中是否包含该Bean
- booleanisSingleton(String name):判断当前的Bean的scope是否是singleton
- ClassgetType(String name):获得当前Bean的类型
- String[] getAliases(String name):获得当前Bean的别名
Bean的Scope
--Singleton
在Spring中,从容器中获得的实例默认都是singleton的,也就是默认每个bean名称只维护个一个bean实例
--Prototype
如果要想每次都能获得一个新的实例,则可以把bean的scope属性设置为prototype,
例如:
<bean id="beanl"class="Bean1"scope="prototype" / )
- Request
表示在Web环境中的request范围
- Session
表示在Web环境中的session范围
- Globa lesession
它仅仅在基于portlet的web应用中才有意义