Spring-Framwork(spring 框架) --------- 容器

Spring 

Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。


1.容器

        提到spring,第一个就是联想到容器。就像苹果公司生产手机,并不是它自己生产,而是委托给其他工厂生产。那么spring里的工厂,就是这个ioc容器了,只是叫法不同。

2.应用上下文(applicationContext维护Bean定义以及对象之间协作关系的高级接口)

       上面提到spring的核心是容器,那么怎么告诉容器管理bean?没错!就是应用上下文去告诉。

       其实框架提供了许多容器的实现。比如beanFactory,只提供基本的DI(依赖注入)功能;还有一种是继承beanFactory派生下来的applicationContext,它能提供更多企业级的服务,例如解析配置文本信息等;

         关于applicationContext配置方法,一种是通过构造器注入(constructor-arg)

                                                                还有一种就是通过setter对应的方法注入(property)

例子:constructor-arg

xml配置文件

<bean id="student" class="com.rc.sp.Student">
    <constructor-arg name="id" value="1"/>
    <constructor-arg name="name" value="student"/>
    <constructor-arg name="dream">
        <list>
            <value>soldier</value>
            <value>scientist</value>
            <value>pilot</value>
        </list>
    </constructor-arg>
    <constructor-arg name="score">
        <map>
            <entry key="math" value="90"/>
            <entry key="english" value="85"/>
        </map>
    </constructor-arg>
    <constructor-arg name="graduation" value="false"/>
</bean>

 property:

xml配置文件

<bean id="teacher" class="com.rc.sp.Teacher">
    <property name="id" value="1"></property>
    <property name="name" value="teacher"></property>
</bean>

输出结果:

   Student [id=1, name=student, dream=[soldier, scientist, pilot],

       score={math=90, english=85}, graduation=false]


   Teacher [id=1, name=teacher]





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值