Spring——IOC

首先,我们先了解一下Spring是什么?

Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。(以上是百度百科上可以去了解的,就不多做详细解释)

Spring的框架特征除了轻量以外,第二特征就是控制反转,也称之为IOC。

那么IOC又是什么呢?

控制反转——Spring通过一种称作控制反转(IoC)的技术促进了低耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。

加载的方式又分为两种:

一种是延迟加载 当然 延迟加载肯定是不常用的

BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));

一种是及时加载

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");

Bean配置有三种方法:

1 基于xml配置Bean

2 使用注解定义Bean

3 基于java类提供Bean定义信息

第一次使用的是基于xml配置Bean

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:util="http://www.springframework.org/schema/util"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
		http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.3.xsd">

	<bean id="person1" class="com.zking.pojo.Person"></beans>

产生一个Spring bean,因为我的所有的产生的bean的对象全部都是写在xml配置文件中,那么就意味着,我需要加载这一个配置

文件信息applicationContex.xml ,加载xml配置文件信息,那就意味着解析xml,解析xml就意味着使用demo4j的class属性值的时

候,根据class的值,进行反射 Class.fromName(class),IOC 无非就是使用的demo4j+反射 hibernate(缓存机制) struts2(拦截器-

>解析struts2.xml文件 并且 反射 web.xml 容器)。

Bean注入:

Bean注入的方式有两种,一种是在XML中配置,此时分别有属性注入、构造函数注入和工厂方法注入,另一种则是使用注解的方

式注入 @Autowired,@Resource,@Required

属性注入即通过setXxx()方法注入Bean的属性值或依赖对象,由于属性注入方式具有可选择性和灵活性高的优点,因此属性注入

是实际应用中最常采用的注入方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值