博客
关于我
Spring DI依赖注入之 set注入柒种方式,美滋滋 (二)
阅读量:241 次
发布时间:2019-03-01

本文共 3387 字,大约阅读时间需要 11 分钟。

文章目录:

写在前面:
本文主要学习依赖注入之set注入的方式,如何注入Bean容器。在环境搭建好的前提下进行创建pojo类。
DI 注入的讲解

DI—Dependency Injection,即“依赖注入”:组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。依赖注入的目的并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系统搭建一个灵活、可扩展的平台。通过依赖注入机制,我们只需要通过简单的配置,而无需任何代码就可指定目标需要的资源,完成自身的业务逻辑,而不需要关心具体的资源来自何处,由谁实现。

理解DI的关键是:“谁依赖谁,为什么需要依赖,谁注入谁,注入了什么”,那我们来深入分析一下:

●谁依赖于谁:当然是应用程序依赖于IoC容器;

●为什么需要依赖:应用程序需要IoC容器来提供对象需要的外部资源;

●谁注入谁:很明显是IoC容器注入应用程序某个对象,应用程序依赖的对象;

●注入了什么:就是注入某个对象所需要的外部资源(包括对象、资源、常量数据)。


1.地址类:

public class Address {// 引用类型private String address;public String getAddress() {	return address;}public void setAddress(String address) {	this.address = address;}@Overridepublic String toString() {	return "Address{" +			"address='" + address + '\'' +			'}';}}

2.学生类:

public class Student {private String name;private Address address; // 唯一引用对象private String[]Books;private List
hobbs;private Map
card;private Set
games;private String wife;private Properties info;public String getName() { return name;}public void setName(String name) { this.name = name;}public Address getAddress() { return address;}public void setAddress(Address address) { this.address = address;}public String[] getBooks() { return Books;}public void setBooks(String[] books) { Books = books;}public List
getHobbs() { return hobbs;}public void setHobbs(List
hobbs) { this.hobbs = hobbs;}public Map
getCard() { return card;}public void setCard(Map
card) { this.card = card;}public Set
getGames() { return games;}public void setGames(Set
games) { this.games = games;}public String getWife() { return wife;}public void setWife(String wife) { this.wife = wife;}public Properties getInfo() { return info;}public void setInfo(Properties info) { this.info = info;}@Overridepublic String toString() { return "Student{" + "name='" + name + '\'' + ", address=" + address + ", Books=" + Arrays.toString(Books) + ", hobbs=" + hobbs + ", card=" + card + ", games=" + games + ", wife='" + wife + '\'' + ", info=" + info + '}';}}

3.resources 目录下创建Applicationcountext.xml 目录,

创建使用NEW —>File 的方式

4.本章节的关键点:

四大名著
红楼梦
西游记
水浒传
三国演义
打篮球
看电影
敲代码
狂街
CF
LOL
COC
BOB
20210410
贺伟
  1. MyTest 测试用例:

public class MyTest {

public static void main(String[] args) {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“Applicationcontext.xml”);
Student student = (Student) context.getBean(“Student”);
System.out.println(student.toString());
}
}

  1. 输出结果
    在这里插入图片描述
总结:

1、前两种方式是我们经常使用的注入方式,剩下的List、Map、set、Properties、null为拓展注入的方式

2、拓展的5个为JavaEE集合章节中的知识 不过是换成标签元素进行注入的。

在这里插入图片描述

转载地址:http://denv.baihongyu.com/

你可能感兴趣的文章
NIFI大数据进阶_FlowFile生成器_GenerateFlowFile处理器_ReplaceText处理器_处理器介绍_处理过程说明---大数据之Nifi工作笔记0019
查看>>
NIFI大数据进阶_FlowFile生成器_GenerateFlowFile处理器_ReplaceText处理器_实际操作---大数据之Nifi工作笔记0020
查看>>
NIFI大数据进阶_Json内容转换为Hive支持的文本格式_实际操作_02---大数据之Nifi工作笔记0032
查看>>
NIFI大数据进阶_Json内容转换为Hive支持的文本格式_操作方法说明_01_EvaluteJsonPath处理器---大数据之Nifi工作笔记0031
查看>>
NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka消费者处理器_来消费kafka数据---大数据之Nifi工作笔记0037
查看>>
NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka生产者---大数据之Nifi工作笔记0036
查看>>
NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
查看>>
NIFI大数据进阶_NIFI监控功能实际操作_Summary查看系统和处理器运行情况_viewDataProvenance查看_---大数据之Nifi工作笔记0026
查看>>
NIFI大数据进阶_NIFI监控的强大功能介绍_处理器面板_进程组面板_summary监控_data_provenance事件源---大数据之Nifi工作笔记0025
查看>>
NIFI大数据进阶_NIFI集群知识点_认识NIFI集群以及集群的组成部分---大数据之Nifi工作笔记0014
查看>>
NIFI大数据进阶_NIFI集群知识点_集群的断开_重连_退役_卸载_总结---大数据之Nifi工作笔记0018
查看>>
NIFI大数据进阶_使用NIFI表达式语言_来获取自定义属性中的数据_NIFI表达式使用体验---大数据之Nifi工作笔记0024
查看>>
NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
查看>>
NIFI大数据进阶_内嵌ZK模式集群2_实际操作搭建NIFI内嵌模式集群---大数据之Nifi工作笔记0016
查看>>
NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_实际操作_03---大数据之Nifi工作笔记0035
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_操作方法说明_01---大数据之Nifi工作笔记0033
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_操作方法说明_02---大数据之Nifi工作笔记0034
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
查看>>