zoukankan      html  css  js  c++  java
  • spring_06装配bean_2

    一.前言

      

      1.自动装配尽量不要用,不如使用set明确

      

    二. 通过构造函数注入值(Bean中可以没有get,set方法) 

    <bean id="emp" class="com.ahd.constructor.Employee">
        <constructor-arg index="0" type="java.lang.String" value="ahd"></constructor-arg>
        <constructor-arg index="1" type="int" value="1"></constructor-arg>
    </bean>

      

      

    三. 自动装配bean的属性值

      

      

      (1)     byName的用法:

    <!-- 配置一个master对象 -->
    
    <bean id="master" class="com.hsp.autowire.Master" autowire="byName">
      <property name="name">
        <value>顺平</value>
      </property>
    </bean>
    
    <!-- 配置dog对象 -->
    
    <bean id="dog" class="com.hsp.autowire.Dog">
      <property name="name" value="小黄"/>
      <property name="age" value="3"/>
    </bean>

      (2)   byType: byType:寻找和属性类型相同的bean,

        找不到,装不上,找到多个抛异常。

      (3) constructor: autowire="constructor"

        说明 : 查找和bean的构造参数一致的一个或多个bean,若找不到或找到多个,抛异常。按照参数的类型装配 

      (4) autodetect

        说明 :  autowire="autodetect"

        (3)和(2)之间选一个方式。不确定性的处理与(3)和(2)一致。

      (5) defualt

        这个需要在<beans defualt-autorwire=“指定” />

        当你在<beans >指定了 default-atuowrite后, 所有的bean的 默认的autowire就是 指定的装配方法;

        如果没有在<beans defualt-autorwire=“指定” /> 没有  defualt-autorwire=“指定” ,则默认是

        defualt-autorwire=”no”

      (6) no: 不自动装配

      

  • 相关阅读:
    Buffer cache spillover: only buffers
    11g中如何禁用自动统计信息收集作业
    OTN中文技术论坛清净的ORACLE讨论之地
    关闭磁盘自动运行
    #error
    在VC++中实现无标题栏对话框的拖动
    string,CString,char*之间的转化
    关于注册表
    #pragma once
    extern "C"用法详解
  • 原文地址:https://www.cnblogs.com/aihuadung/p/10371624.html
Copyright © 2011-2022 走看看