博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring DI
阅读量:5220 次
发布时间:2019-06-14

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

 

DI(Dependency Injection),依赖注入是一种技术,即一个对象提供另一个对象的依赖关系。

 

构造注入

前提:类型必须有构造,index与参数类型保持一致

1.创建Student类

package cn.happy.day03aop.aop;/** * Created by Administrator on 2018/3/5. *///构造注入public class Student {    private String name;    private Integer age;    public Student() {    }    public Student(String name, Integer age) {        this.name = name;        this.age = age;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }}

2.配置applicationContext.xml文件

3.编写测试类

@Test    public void SpringStructure(){        ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext-day04di.xml");        Student service=(Student)ctx.getBean("dao");        System.out.println( service.getName()+"\n"+service.getAge());    }

4.查看测试结果

 

p命名空间的注入

使用前要先要在applicationContext.xml配置文件中引入p命名空间

xmlns:p="http://www.springframework.org/schema/p"

1.1创建一个Car类

public class Car {    private String color;    public String getColor() {        return color;    }    public void setColor(String color) {        this.color = color;    }}

1.2在Student类中加入一个Car类型的car属性,并封装

2.配置applicationContext.xml

3.查看测试结果

 

集合属性注入

1.创建Mycollection类

package cn.happy.day03aop.aop;import java.util.*;/** * Created by Administrator on 2018/3/5. *///集合属性注入public class Mycollection {    private String[] array;    private List
list; private Set
set; private Map
map; private Properties properties; @Override public String toString() { return "Mycollection{" + "array=" + Arrays.toString(array) + ", list=" + list + ", set=" + set + ", map=" + map + ", properties=" + properties + '}'; } public String[] getArray() { return array; } public void setArray(String[] array) { this.array = array; } public List
getList() { return list; } public void setList(List
list) { this.list = list; } public Set
getSet() { return set; } public void setSet(Set
set) { this.set = set; } public Map
getMap() { return map; } public void setMap(Map
map) { this.map = map; } public Properties getProperties() { return properties; } public void setProperties(Properties properties) { this.properties = properties; }}

2.配置applicationContext.xml

小李
小王
小张
小黄
小赵
小辉
1
2

3.测试

 

 分享完毕

 

 

 

 

 

转载于:https://www.cnblogs.com/xuchangqi1/p/8510975.html

你可能感兴趣的文章
SQL查询总结 - wanglei
查看>>
安装cocoa pods时出现Operation not permitted - /usr/bin/xcodeproj的问题
查看>>
makefile中使用变量
查看>>
GIT笔记:将项目发布到码云
查看>>
JavaScript:学习笔记(7)——VAR、LET、CONST三种变量声明的区别
查看>>
JavaScript 鸭子模型
查看>>
PHP典型功能与Laravel5框架开发学习笔记
查看>>
SQL Server 如何查询表定义的列和索引信息
查看>>
项目上传到github上
查看>>
GCD 之线程死锁
查看>>
NoSQL数据库常见分类
查看>>
JS小工具_字符串转16进制数组_02
查看>>
信息安全系统设计基础实验四—20135214万子惠20135227黄晓妍
查看>>
一题多解 之 Bat
查看>>
Java 内部类
查看>>
测试一个对象是否是类字符串
查看>>
{面试题7: 使用两个队列实现一个栈}
查看>>
[转]SQL中 OVER(PARTITION BY) 取上一条,下一条等
查看>>
前端开发就从认识浏览器开始 - 浏览器处理请求的过程
查看>>
【练习】使用事务和锁定语句
查看>>