依赖注入简介(二)

       在上一篇中,我们已经介绍过了最基本的依赖注入,接下来我们来看如何对需要使用的类进行装配。通常应用程序的组件之间的关联是通过wiring,在Spring中同样有很多方式来装配。但是一个最通常我们使用的方法是利用XML。接下来我们来展示一个简单的Spring配置文件,knights.xml文件,它一起装配了BraveKnight,SlayDragonQuest和一个PrintStream。


在这里BraveKnight和SlayDragonQuest都被声明为Spring中的bean,在BraveKnight bean中它通过利用SlayDragonQuest作为构造参数完成了实例化,与此同时SlayDragonQuest也利用PrintStream完成了初始化。如果你不喜欢使用XML的方式,Spring也为你提供了其他的配置方式。

SEEING IT WORK

      在Spring的应用中,应用的context负责装载声明的beans,同时将他们装配在一起。Spring应用的context负责组成应用的每一个对象的创建和装配。Spring有很多种context,这些不同的context之间的不同仅仅是他们对configuration的装配方式。

当我们用XML来配置bean时,一个合适的context就是ClassPathXmlApplicationContext,这个context能够根据配置的路径来从XML中装载beans,下面的程序显示了如何装载配置。


这里的main方法根据XMl配置文件,创建了context,然后它利用context作为恢复knight bean的工厂。还原出knight法的bean,并且调用相关方法实现函数功能。





本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451410.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

eclipse启动tomcat 访问http://localhost:8080 报404错误

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 eclipse正常启动tomcat,但是 访问http://localhost:8080 却报404错误 修改下配置 就好操作如下图 打开eclipse的server视图&a…

手把手JDK环境变量配置

分为下载,配置,验证三个步骤解释如何进行JDK环境变量配置。 步骤一: 首先查看配置成功后的效果: tip:点击win——>运行(或者使用winr,或者shift鼠标右键打开powershell)——>输入cmd回车——>控制…

myeclipse进入Myeclipse configuration center 如何关闭

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 找到这个图标,放上去显示return即可关闭,隐藏很深有木有

[No0000166]CPU的组成结构及其原理

中央处理器(Central Processing Unit, CPU)CPU的基本架构和工作原理其实百科上讲得已经相当清楚了,不过我觉得有些事情呢还是给个例子出来比较方便学习。本文会先从内存地址,计算机的一般架构之类的基础知识出发,然后逐步为读者"拼装&qu…

Java 时间总结

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/80613024 本文出自【赵彦军的博客】 时区 整个地球分为二十四时区,每个时区都有自己的本地时间。为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Univer…

4.10/4.11/4.12 lvm讲解 4.13 磁盘故障小案例

2019独角兽企业重金招聘Python工程师标准>>> 准备磁盘分区 fdisk /dev/sdb n 创建三个新分区,分别1G t 改变分区类型为8e 准备物理卷 pvcreate /dev/sdb1 pvcreate /dev/sdb2 pvcreate /dev/sdb3 pvdisplay/pvs 列出当前的物理卷 pvremove /dev/sdb3 删除…

外围功能电路控制 LET′S TRY“嵌入式编程”: 4 of 6

外围功能电路控制 LET′S TRY“嵌入式编程”: 4 of 6本连载讲解作为嵌入式系统开发技术人员所必需具备的单片机的基础知识。 在《单片机入门(1)~(3)》中,我们一起学习了单片机的硬件和编程语言以及开发环境…

如何防止代码腐烂

很多团队都有这个问题,一个项目的代码本来开始设计得好好的,一段时间以后,代码就会变得难以理解,难以维护,难以修改。为什么?我一直在思考这个问题。 让我们先看一个人的情况。 1. 程序员的成长 新手的代码…

git branch 分支

Git自学之路(四)- git branch 分支 几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。 在很多版本控制系统中,这是一个略微低效的过程——常常需要完全创建一…

大数据分析如何创建最佳的移动应用用户体验

2019独角兽企业重金招聘Python工程师标准>>> 如今,越来越多的人使用移动应用程序。而移动应用将在未来成为一个价值数十亿美元的产业。大数据可以帮助企业构建最佳的用户体验。 多年来,开发移动应用程序的技术一直在不断发展,这实…

Jstorm+Spring+mybatis整合

在现有的jstorm框架下,有一个需求:jstorm要对接mysql数据库的实时读取数据, 通过bolt处理,可能要调用service层的框架,最后保存到数据库。 在网上寻找了一下,发现storm集成spring的资料非常少,有…

上海云栖:金融政企行业的CDN最佳实践

2019独角兽企业重金招聘Python工程师标准>>> 摘要: 在刚刚结束的上海云栖大会飞天技术汇分论坛上,阿里云视频云产品架构师罗小飞进行了《阿里云CDN——面向金融政企的CDN最佳实践》主题分享,为上海的嘉宾介绍CDN的解决方案与技术服…

lunix基本命令

安装lunix 批量创建文件 whoami查看当前用户 sudo adduser lilei创建用户 groups lilei 查看用户所属用户组 sudo usermod -G root lilei 赋予root权限 sudo deluser lilei --remove-home ls -l 显示目录的文件 ls -a 显示隐藏文件 PWD 获取当前目录 cd .. 返回上层目录 cd 进入…

开启Swarm集群以及可视化管理

为什么80%的码农都做不了架构师?>>> 在搭建的两台coreos服务器上开启swarm集群 前置条件: docker均开启2375端口同一个局域网内主服务器上安装Portainer容器安装Portainer容器执行: docker run -d -p 9000:9000 --restartalways …

python基本语法:序列

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 序列的基本操作: 2.用例: 3.序列包含字符串、元组、列表。

IMDb、烂番茄、MTC、各种电影行业评分名字整理

这篇不是技术文章,就是对总是看到但是不知道具体是什么的一些电影名词、评分、来源,学习一下。 IMDb 互联网电影资料库(Internet Movie Database,简称IMDb)是一个关于电影演员、电影、电视节目、电视明星和电影制作的在…

iOS应用:成功就像中彩票,大半开发者亏本

移动是座大金矿,从来都不乏一飞冲天的成功故事(Draw Something、愤怒的小鸟等)。但是大家往往只看到光鲜的一面,对于移动开发者来说,现实是残酷的,根据市场营销机构App Promo的一项调查,绝大多数…

python基本语法:元组

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 元组说明: 元组和列表类似,只不过元组和字符串一样是不可变的,即你不能修改元组。 元组通过圆括…

python基本语法:列表(列表和元组的区别)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1.基本说明 2.用例: 3.列表类似于java中的list. 与元组不同,定义单个元素对象时不用加逗号,且元素值…

用JSONObject解析和处理json数据

本文中主要介绍JSONObject处理json数据时候的一些常用场景和方法。 (一)jar包下载 所需jar包打包下载百度网盘地址:https://pan.baidu.com/s/1c27Uyre(二)常见场景及处理方法 1、解析简单的json字符串:1  …