三种注入方式:

  1. setter & getter 注入
  2. 构造函数注入
  3. p命名空间注入

有两个实体类

student:

public class Student {String name;int number;int age;public Student() {}public Student(String name, int number, int age) {super();this.name = name;this.number = number;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student [name=" + name + ", number=" + number + ", age=" + age + "]";}}

teacher:

public class Teacher {String name;Student student;public String getName() {return name;}public void setName(String name) {this.name = name;}public Student getStudent() {return student;}public void setStudent(Student student) {this.student = student;}@Overridepublic String toString() {return "Teacher [name=" + name + ", student=" + student + "]";}
}

setter & getter 注入

这个要求在实体类中有setXxxx()
比如

public void setName(String name) {this.name = name;
}

在xml中的形式:

 <bean id="student" class= "org.ljn.entity.Student"><property name="name" value="ljn" /><property name="age" value="20" /><property name="number" value="28" />  </bean>

构造方法注入

  1. 直接写的方式,必须按照顺序

    <bean id="student1" class= "org.ljn.entity.Student"><!-- name,number,age --><constructor-arg value = "jack"></constructor-arg><constructor-arg value = "123"></constructor-arg><constructor-arg value = "35"></constructor-arg>
    </bean>
    
  2. 不按照顺序,加上index(从0开始)
    <bean id="student2" class= "org.ljn.entity.Student"><constructor-arg index="1" value = "35"></constructor-arg><constructor-arg index="2" value = "123"></constructor-arg><constructor-arg index="0" value = "jack"></constructor-arg>
    </bean>
    

p命名空间

首先要在namespace里面加上p的那个

这么写

Spring IoC注入三种方式相关推荐

  1. spring依赖注入三种方式

    首先,要学习Spring中的Bean的注入方式,就要先了解什么是依赖注入. 依赖注入是指:让调用类对某一接口的实现类的依赖关系由第三方注入,以此来消除调用类对某一接口实现类的依赖. Spring容器中 ...

  2. Spring 依赖注入三种方式的实现,及循环依赖问题的解决(源码+XML配置)

    搬砖啦,搬砖啦,这几天在看Spring相关的书,下面给大家分享一下这几天的心得与收获,Go Go Go! Spring支持两种依赖注入方式,分别是属性注入,构造函数注入.除此之外,Spring还支持工 ...

  3. IoC、Spring 环境搭建、Spring 创建对象的三种方式、DI

    二.IoC 中文名称:控制反转 英文名称:(Inversion of Control) 3.I oC 是什么? 3.1 IoC 完成的事情原先由程序员主动通过 new 实例化对象事情,转交给 Spri ...

  4. Spring 学习之 二----Spring创建对象的三种方式

    最近在系统的学习Spring,现在就Spring的一些知识进行总结. 我们知道Spring是一个开放源代码的设计层面的框架,他主要解决的是业务逻辑层与其他各层之间松耦合的问题. Spring 有三个核 ...

  5. Spring集成Memcached三种方式(一)

    Spring集成Memcached三种方式(一) 转载:http://blog.csdn.net/u013725455/article/details/52102170 Memcached Clien ...

  6. Spring 容器:三种方式解决 Resource leak: ‘applicationContext‘ is never closed 问题

    文章目录 前言 一.Spring 容器警告的产生 1.1.项目场景 二.Spring 容器未关闭后果分析 2.1.肉眼可见的警告 2.2.导致的内存泄漏 2.2.1.什么是内存泄漏? 2.2.2.如何 ...

  7. spring配置datasource三种方式

    转自:http://blog.csdn.net/yangyz_love/article/details/8199207 1.使用org.springframework.jdbc.datasource. ...

  8. spring配置datasource三种方式 数据库连接

    1.使用org.springframework.jdbc.datasource.DriverManagerDataSource  说明:DriverManagerDataSource建立连接是只要有连 ...

  9. Spring创建对象的三种方式以及创建时间

    创建对象的三种方式: 1.采用默认的构造函数创建 2.采用静态工厂方法 1.写一个静态工厂方法类 public class HelloWorldFactory { public static Hell ...

最新文章

  1. 软件工程学习笔记《一》什么是软件工程
  2. 优秀的开源项目C_适合提高C/C++、网络编程能力的开源项目!不要错过,赶紧收藏...
  3. java是值传递还是引用传递_Java 到底是值传递还是引用传递?
  4. 解决ubuntu18.04中python兼容以及pip兼容问题
  5. python pipenv_为什么Python开发人员应该使用Pipenv
  6. 动态污点分析——隐式流造成的漏报和误报
  7. c语言栈的实现以及操作_python模拟栈的操作实现非递归方式的快速排序算法
  8. scala 基础类库 —— 文件操作
  9. 【北京集训D2T3】tvt
  10. php web应用 开发工具,phpEclipse开发工具(二 web应用)
  11. android自定义对号,Android-手势识别(普通手势识别:上 下 左 右 ;自定义手势识别:对号,错号 等)...
  12. 扩展欧几里得算法 思想及模板代码
  13. 怎样清理xp系统垃圾
  14. 这才是心理学:02可证伪性,如何打败头脑中的小精灵
  15. ros2中vcs import src < ros2.repos 命令
  16. 普通文本el-tootip超出宽度自动显示省略号,悬停显示
  17. 如何让你的代码变得更优雅?这些代码规范和技巧必须知道(进阶必备,建议收藏)
  18. html5这么盒子页面居中,实现盒子居中
  19. 2021.09青少年软件编程(Python)等级考试试卷(三级)
  20. 无锡设计培训——室设行业现状与发展前景

热门文章

  1. k8s调试工具--busybox
  2. C#如何获取本机网络ip地址
  3. 【自适应引导滤波和梯度信息:PAN+MS:传统方法HIS】
  4. php相同数据合并单元格,jQuery_基于jQuery的合并表格中相同文本的相邻单元格的代码,ONE 已经生成的数据表格大致 - phpStudy...
  5. C语言指针,数组,函数
  6. linux模糊查找目录文件,详解Linux查找目录下的按时间过滤的文件
  7. spring jsm(一)
  8. 利用xposed自动获得支付宝个人收款二维码链接和收款记录
  9. 单点登录(SSO)、CAS介绍
  10. Java学习之路-----Java基础简介,基础语法,Java标识符,修饰符,关键字与注释