当前位置: 首页 > news >正文

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

  • 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配置文件很类似

http://www.lryc.cn/news/595494.html

相关文章:

  • 面试总结第54天微服务开始
  • Spring处理器和Bean的生命周期
  • 线程池与ThreadPoolExecutor源码解析(上)
  • 暴力破解练习
  • Pandas - JSON格式数据操作实践
  • AV1平滑缓冲区
  • iostat的使用说明
  • MongoDB 查询时区问题
  • GUI简介
  • Kafka 如何优雅实现 Varint 和 ZigZag 编码
  • 【每天一个知识点】非参聚类(Nonparametric Clustering)
  • 期权到期会对大盘有什么影响?
  • 如何用 Z.ai 生成PPT,一句话生成整套演示文档
  • 【操作篇】群晖NAS用root权限直接访问系统分区文件
  • 圆柱电池自动分选机:全流程自动化检测的革新之路
  • 83、形式化方法
  • 淘宝获取商品分类接口操作指南
  • MySQL介绍和MySQL包安装
  • accelerate 在Pycham中执行的设置方法
  • 泛型:C#中的类型抽象艺术
  • Telnet远程登录配置全流程详解
  • 大模型为什么出现幻觉?
  • 二分查找:区间内查询数字的频率
  • 【python数据结构算法篇】python数据结构
  • Linux——C/C++静态库与动态库完全指南:从制作到实战应用
  • 安全测试学习
  • 产品剖析之AI创作与协作的未来革新者Flowith
  • nerf-2020
  • pandas 的series和dataframe的用法,六个题目
  • 牛客网题解 | 单词识别