Spring关于依赖注入的几种方式和Spring配置文件的标签

发布于:2025-07-23 ⋅ 阅读:(21) ⋅ 点赞:(0)
  • Spring关于依赖注入的几种方式和Spring配置文件的标签

    • 构造器注入

      • 通过构造方法和set方法注入,只需要将set方法改造成带参的构造方法,然后在<constructor-arg>标签通过ref方法注入要注入的bean对象标签。

        • xml文件配置

        • Teacher类

        • Student类

        • 测试类和结果

    • 自动专配

      • 通过autowire属性来指明,使用后就不需要我们在bean.xml文件去配置。autowire有两个属性一个是byname,另外一个bytype。

        • byname的方式根据set方法的方法名和要注入bean对象的id名要一致。

          • Teacher类

          • Spring配置文件

          • 测试类和运行结果

          • Students

        • 根据属性的数据类型自动装配。Spring容器会查找与属性类型匹配的唯一Bean,并将其注入到对应的属性中。如果有多个相同类型的Bean,则装配失败。即会在bean里面查找与set方法的参数类型一样的对象

          • xml配置文件

          • Students类

          • teacher类

          • 测试类和结果

    • 基本数据的注入

      • 如果注入类似Interger或Spring的方法,可直接通过在<property>标签通过value指定值有set方法直接注入。

        • spring配置文件

        • Student类

        • 测试结果

      • List集合的注入方式

        • 类似 <bean id="enrolledServiceImp" class="com.frank.service.EnrolledServiceImp">
          <property name="list">
          <list>
          <value>blue</value>
          <value>green</value>
          <value>yellow</value>
          </list> </property>
          </bean>

          • Spring配置文件

          • 测试结果

          • 学生类

        • 如果我注入的是个list,但是list里面不是普通的字符串,而是一个类的引用,那又该如何实现呢?

          • 实现方式:<property name="listDao">
            <list> <ref bean="a1"></ref>
            <ref bean="a2"></ref>
            <ref bean="a3"></ref> </list> </property> </bean> <bean id="a1" class="com.frank.dao.EnrolledDao"></bean> <bean id="a2" class="com.frank.dao.EnrolledDao"></bean> <bean id="a3" class="com.frank.dao.EnrolledDao"></bean>

      • Map集合的注入方式

        • 同上与list配置文件很类似


网站公告

今日签到

点亮在社区的每一天
去签到