spring框架--控制反转(IOC)、spring的注入、Bean的作用域

1.spring是什么?
spring是一个轻量级的、控制反转(IOC)和面向切面编程(AOP)的容器框架。

2.spring入门程序
2.1.导入jar包
2.2.spring的核心配置文件 applicationContext.xml(默认)
作用:用于配置所有的类(对象),这些类可以称为springBean
2.3.spring的核心类:ApplicationContext(接口)
作用:创建或是获取springBean.

3.IOC
控制反转:把对象的创建、初始化、销毁等工作权利交给spring容器, 让spring容器来管理这些对象的生命周期。
IOC不是一种技术,而是一种思想 面向对象编程的思想,可以设计出松耦合度、优良的程序
包括:依赖注入DI(IOC的核心)、依赖查找

 <!--class:对应的类
	 id:唯一的标识
   	   等同于
   	 Person p=new Person();-->
   	 <bean id="person" class="cn.bean.Person"></bean>

4.spring的注入
当实例化某个对象的时候由外部容器来设置这个对象的值
属性值的注入,一定有对应的setter方法

<!-- 注入的案例,注入时,属性必须有setter方法 -->
	<bean id="user" class="cn.bean.User">
	    <!-- property 当前配置的类的属性
			 name:属性的名字
			 value:注入的值    
			 ref:指向其他的bean的id
		 -->
		<!-- int类型注入 -->
		<property name="age" value="22"></property>
		<!-- String类型注入 -->
		<property name="name" value="张三"></property>
		<!-- List类型注入 -->
		<property name="list">
			<list>
				<value>篮球</value>
				<value>跑步</value>
			</list>
		</property>
		<!-- map类型注入 -->
		<property name="map">
			<map>
				<entry key="mybatis" value="98"></entry>
				<entry key="spring" value="90"></entry>
			</map>
		</property>
			<!-- 注入其他的类 
			ref:指向其他的bean的id
			-->
		<property name="car" ref="car"></property>
	</bean>
	<bean id="car" class="cn.bean.Car">
		<!-- 小汽车 -->
		<property name="name" value="bmw"></property>
	</bean>

5.Bean的作用域
作用域:scope
默认singleton:单例模式。只有一份实例,缺省就是singleton
prototype:原型模式。每次通过spring 容器来获取springBean,容器都会创建一个新的实例进行返回
request:同一请求是同一个实例
session:同一会话是同一实例。

猜你喜欢

转载自blog.csdn.net/weixin_43708090/article/details/85231439