• 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

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

    无论如何,心平气和

  • 相关阅读:
    IDEA、Eclipse快捷键对比
    linux常见命令
    拷贝本地文件到远程服务器的批处理脚本
    关系型数据库的超键、候选键、主键
    JAVA运算符总结
    JAVA原码反码补码
    JPA查询语句(转载)
    Spring Data JPA初使用(转载)
    android学习————项目导入常见错误整理(转载)
    Spring 系列: Spring 框架简介
  • 原文地址:https://www.cnblogs.com/cfb513142804/p/7248855.html
Copyright © 2020-2023  润新知