zoukankan      html  css  js  c++  java
  • Spring学习01

    滴水穿石

    Spring 的概念就不要说了,这只是复习

    1. IOC容器

    ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-autowire.xml");
    ApplicationContext  就是IOC容器,可以这么理解
    IOC容器从哪里加载?一般都使用上述方式,从配置文件中加载
    ClassPath 应该不用说了,就是项目的src 目录下

    2.bean的配置

    2.1 属性配置

    <bean id="address" class="com.cfb.learn.domain.Address">
            <property name="city" value="BeiJing"></property>
            <property name="street" value="XiZHiMen"></property>
        </bean>

    2.2 构造器配置

    <bean id="car" class="com.cfb.learn.domain.Car"><!-- p:name="Falali" p:price="300000.25" -->
            <constructor-arg name="name" value="Falali"></constructor-arg>
            <constructor-arg name="price" value="300000.25"></constructor-arg>
        </bean>

    2.3 命名空间、命名引用、自动装配

    <bean id="person" class="com.cfb.learn.domain.Person"
            p:name="XiaoMing" p:address-ref="address" autowire="byName"></bean>

    byName: 根据bean的名字及bean的setter风格的属性名进行自动装配,若有匹配则自动装配,没有则不装配

    byType: 

    一般不使用自动装配,不是那么灵活

    结果:

    Person [name=XiaoMing, address=Address [city=BeiJing, street=XiZHiMen], car=Car [name=Falali, price=300000.25]]
    

      

     2.4 bean配置的继承

    <bean id="address" class="com.cfb.learn.domain.Address" 
                 p:city="BeiJing……" p:street="XiZHiMen"></bean>    
        
    <bean id="address2" class="com.cfb.learn.domain.Address" 
                 p:city="BeiJing" parent="address"></bean>

    父类可以 声明为抽象的类 abstract="true"

    抽象的类可以没有 class ,但是没有 class 必须为抽象类,这样可以作为模板使用

     2.5 bean 之间的依赖关系

    depend-on

    可以通过depend-on 设置 bean 的前置依赖

    IOC容器初始化的时候,会在Bean初始化之前先实例化依赖的bean

    —————————————————————————————————————————————————————————————————————————

    无论如何,心平气和

  • 相关阅读:
    iOS 11和xcode9
    #ifdef __OBJC__宏定义的作用
    项目小分析------从 优普钱包工资单 谈代码的规范性和界面的一般写法
    UIAlertView 点击按钮后控制其是否消失
    iOS 限制输入字数完美解决方案
    tn文本分析语言(四) 实现自然语言计算器
    重磅开源:TN文本分析语言
    差一点其实差很多
    光棍节之夜,用数据分析帮女神学姐选婚房
    你能排第几?2016互联网行业薪酬数据分析
  • 原文地址:https://www.cnblogs.com/cfb513142804/p/7248855.html
Copyright © 2011-2022 走看看