Bean的装配方式

Bean的装配方式有三种,

1,通过xml方式装配,此种方式比较麻烦,但也是入门时候需要学习的内容;
2,通过annotation注解方式装配,此种方式是目前最常用的,要学习xml方式装配才能更好理解此种方式;
3,通过自动方式装配;

先从刚入门开始,在学习装配时要先掌握每种xml标签的作用—
1,通过xml方式装配–
①通过设值方式装配–案例演示


package com.test.one.charpterday1;
import java.util.Set;
public class Teacher implements Person {private Student student;//setter注入,public void setStudent(Student student) {this.student=student;   }
//设置Teacher属性private String TeacherName;private String TeachSubject;private Set<String>TeacherHobby;public Teacher() {    //无参构造方法,这里演示是为了更清楚看到该构造方法,当类中无其他构造方法时会默认有一个无参构造}//SETTER方法省略,eclipse有自动生成getter和setter的方法public String toString() {return "我是-"+this.TeacherName+",教授-"+this.TeachSubject+","+"我的爱好是-"+this.TeacherHobby;}  @Overridepublic void Say() {this.student.Say();System.out.println("I am a goog teacher!!!"); }}
<!-- 往teacher类中注入学生类 --><bean id="teacher" class="com.test.one.charpterday1.Teacher" scope="singleton"><property name="student" ref="student"/><!--ref表示引用的bean属性名-->
<property name="TeacherName" value="刘能"/><!--setter注入时要用 <property>标签--><property name= "TeachSubject" value ="语文"/><!-- name表示属性名,value表示属性值--><property name="TeacherHobby"><!--<set>标签表示java.util包中的集合,用于存放集合数据,<list>、<map>也用于存放集合--><set><value>"编程"</value><value>"乒乓球"</value><value>"健身"</value></set></property></bean>

②通过构造方式注入

public class Student implements Person {private String StuName;//学生姓名
private int StuAge;//学生年龄
private char StuGender;//学生性别
private List <String>StuHobby;//学生爱好
public Student(String name,int age,char gender,List<String>list) {this.StuName=name;this.StuAge=age;this.StuGender=gender;this.StuHobby=list;
}
<bean id="student1" class="com.test.one.charpterday1.Student" scope="prototype"><constructor-arg index="0" value="小红" /><!--构造注入时要用 <<constructor-arg>标签--><constructor-arg index="1"  value="16" /><!-- index表示属性序号对应构造方法中的参数顺序,value表示属性值--><constructor-arg index="2" value="女" /><constructor-arg index="3"><list><value>"编程"</value><value>"乒乓球"</value><value>"健身"</value></list></constructor-arg></bean>

下图是运行结果结果–

完整代码请查看链接—
链接:https://pan.baidu.com/s/1PigyaG60mAwJ8ckkfQnmKw
提取码:jzja
复制这段内容后打开百度网盘手机App,操作更方便哦

Bean的装配方式之xml装配--(超详细,适合小白入门)相关推荐

  1. 下载Windows ISO镜像的方法 (超详细 适合新手入门)

    前言

  2. 超详细的RabbitMQ入门

    转载:超详细的RabbitMQ入门,看这篇就够了!-阿里云开发者社区 思维导图 一.什么是消息队列 消息指的是两个应用间传递的数据.数据的类型有很多种形式,可能只包含文本字符串,也可能包含嵌入对象. ...

  3. linux入门_Linux超详细0基础入门篇(一)

    首先要感谢大康老师对我在Linux操作系统上的教导. 今天来讲一下用途广泛的Linux的基础入门教程 仅仅是做入门使用,如果想更加深入的学习那就需要自己做探索了. 本次例子使用的是kali linux ...

  4. Git(2)-- Git安装后首次配置与第一次使用Git和Github管理自己的代码(超详细纯小白图文教程)

    文章目录 0.写在前面: 一.注册Github 1.注册Github: 2.登录 3.创建仓库 二.安装Git 三.配置Git和Github(Git安装好后首次使用需要配置完成后才可以使用) 1.打开 ...

  5. 动态规划27k字超详细保姆级入门讲解——附DP经典线性、区间、二维图、四维8个模型题解

    动态规划27k字超详细保姆级入门讲解 写在前面: 这篇文章是目前为止我写过最长也是最久的文章,前面关于DP的讲解我查阅了大量的博客资料,学习其他博主对DP的理解,也翻阅了很多经典的纸质书籍,同时做了近 ...

  6. 超详细的MySQL入门教程(四)

    MySQL:简单的增删改查 查询数据 基本语法介绍 打印任意值 查询表中全部数据 查询表中部分字段 限定条件查询 例1:查询编号值小于指定值的记录 例2:查询地址不等于某值的记录 例3:查询一级地址等 ...

  7. 超详细的cmake入门教程【转载】

    这篇文章主要介绍了超详细的cmake入门教程,需要的朋友可以参考下 源出处 超详细的cmake入门教程 什么是cmake 在 linux 平台下使用 CMake 生成 Makefile 并编译的流程 ...

  8. 注解@Component方式代替xml装配bean

    一.@Component 用注解来装配bean 1. 2.对类使用注解,装配bean: 3.类中,注入其他对象: 二.bean.xml中配置@Componet方式装配bean 1.开启注解装配bean ...

  9. 【建议收藏】超详细的Canal入门,看这篇就够了!!!

    概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 背景 早期,阿里巴巴B2B公司 ...

  10. 【建议收藏】超详细的Canal入门,看这篇就够了。

    概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 背景 早期,阿里巴巴B2B公司 ...

最新文章

  1. 理解YOLOv2训练过程中输出参数含义
  2. VR+监狱,分分钟让犯罪分子重新做人
  3. ubuntu装双系统win7和linux,Ubuntu下安装WIn7(双系统)
  4. C语言学习之求S=a+aa+aaa+... +aa.....aa之值,其中a是一个数字,n表示a的位数.
  5. c++中堆、栈内存分配概念示例讲解
  6. javascript 核心概念(1)-数据类型
  7. docx文档怎么排列图片_“胶水语言”办公自动化Word篇——使用Python编辑和读取Word文档
  8. 机器学习入门|线性回归(二)
  9. [Matlab] 二进制蝙蝠算法用于解决背包问题
  10. UltraISO9.3.0.2610中文绿色注册版
  11. JAVA之进制转换(全)
  12. 鄂尔多斯固体废物智慧化管理平台设备和功能概况
  13. Python exe Fatal error detected
  14. TriangleCount三角形计数
  15. idea-2017破解教程
  16. PPT画图(或排版)后保存为高清图片(可自定义分辨率)
  17. 基于PHP开发的云平台网络课堂教学学习互动平台设计
  18. ffmpeg视频转动图gif和Webp
  19. 输入关键字的爬虫方法(运行环境python3)
  20. 算术运算符:取余(取模)%

热门文章

  1. 初学平面设计者应该掌握的软件是AI
  2. 3种云桌面(VDI、IDV、VOI)技术解决方案简介
  3. 同一局域网下电脑传输文件的方式(超简单!)
  4. 2018年值得推荐的20个Bootstrap网站模板
  5. 从sql2016导出数据库到sql2014
  6. python排版word文档 效率_5秒搞定Word排版,效率颠覆你的想象!
  7. 51单片机波特率计算c语言,51单片机波特率怎么算?51单片机波特率计算公式
  8. 用户画像方法论与工程化解决方案 pdf_《用户画像》作者:赵宏田
  9. (二)零基础入门C语言 --- C语言之入门课程
  10. java有用还是c有用_这周的有用资源