美文网首页
Spring-002-bean管理(XML文件配置)

Spring-002-bean管理(XML文件配置)

作者: 井易安 | 来源:发表于2018-05-04 16:28 被阅读0次

Bean实例化的方式

  • 在spring里面通过配置文件创建对象

  • bean实例化三种方式实现

    • 使用类的无参数构造创建(重点/主要使用)
    <bean id="user" class="com.ljy.spring.User"></bean>
    

    如果类里面没有无参构造则会出错

    • 使用静态工厂创建

    创建一个静态方法,返回类对象

    <!--使用静态工厂创建对象  -->
     <bean id="bean2" class="com.ljy.spring2.Bean2Factory" factory-method="getBean2"></bean>
    
    • 使用实例工厂创建

    创建不是静态的方法,返回类对象

    <!--实例工厂创建对象  --> 
    <!--创建工厂对象  --> 
    <bean id = "bean3Factory" class="com.ljy.bean.Bean3Factory"></bean>
    <bean id="bean3" factory-bean="bean3Factory" factory-method="getBean3"></bean>
    
    
    

bean标签常用属性

  1. id属性
    给bean起名字,id属性值名称不能包含特殊符号,根据id得到配置对象
  2. class属性
    创建对象所在的类的全路径
  3. name属性
    跟id属性一样,但是id属性值不能包含特殊符号 但是name属性值里面可以包含特殊符号,不过目前都用id
  4. scope属性
    属性值有
    • singleton:默认值,单例的 对象只能创建一次
    • prototype: 多例的 每次创建都是一个新的对象
    • request:创建对象把对象放在request域里面
    • session:创建对象吧对象放在session里
    • globalSession:创建对象把对象放在globalSession里面全局Session 单点登录

属性注入

  1. 创建对象时候 向类的属性设置值
  2. 属性注入的方式(三种)
    1. set注入
      image

      IOC和DI的区别

      IOC:控制反转,把对象创建交给spring进行配置
      DI: 依赖注入, 向类里面的属性注入值
      关系:依赖注入不能单独存在,需要在ioc基础之上完成操作

      Spring整合web项目

      1. 加载spring核心配置文件
        //加载spring配置文件,根据创建对象
        ApplicationContext context = new ClassPathXmlApplicationContext("applicationContex.xml");
        
        1. new对象,功能可以实现,效率很低
      2. 实现思想:把家在配置文件和创建对象的过程,在服务器启动时候完成
      3. 实现原理
        1. ServletContext对象
        2. 监听器
        3. 具体使用:
          • 在服务器启动时候,为每个项目创建一个ServletContext对象
          • 在ServletContext对象创建的时候,使用监听器可以具体到ServletContext对象在什么时候创建
          • 使用监听器监听到ServletContext对象创建时候,
            • 加载spring配置文件,把配置文件配置对象创建
            • 把创建对象放到ServletContext域对象里面(setAttribute方法)
          • 获取对象时候,到ServletContext域得到(getAttribute()方法)

相关文章

网友评论

      本文标题:Spring-002-bean管理(XML文件配置)

      本文链接:https://www.haomeiwen.com/subject/xsodrftx.html