spring学习(34):构造函数依赖注入

目录结构

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.geyao</groupId><artifactId>spring01geyao</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.3.13.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>3.2.0.RELEASE</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.3.4.RELEASE</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.3.4.RELEASE</version><scope>test</scope></dependency></dependencies>
</project>

applictioncontext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><!--bean元素:描述当前的对象需要由spring容器管理id属性:标识对象 未来在应用程序中可以根据id获取对象class对象:被管理的对象的全名-->
<bean name="compactDisc1 compactDisc12" class="com.geyao.demo.soundSystem.CompactDisc"></bean><bean name="compactDisc2" class="com.geyao.demo.soundSystem.CompactDisc"></bean><bean name="cdPlayer1" class="com.geyao.demo.soundSystem.CDPlayer"><constructor-arg ref="compactDisc1"/></bean>
</beans>

log4j.properties

### 设置###
log4j.rootLogger = ERROR,stdout### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
log4j.category.org.springframework.beans.factory=ERROR

CompactDisc类

import com.geyao.demo.soundSystem.CompactDisc;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class ApplicationSpring {public static void main(String[] args){System.out.println("Application ");ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");CompactDisc cd=context.getBean(CompactDisc.class);cd.play();}
}

cdplayer类

package com.geyao.demo.soundSystem;public class CDPlayer {private CompactDisc cd;public CDPlayer() {super();System.out.println("cdplayer的构造方法"+this.toString());}public CDPlayer(CompactDisc cd){this.cd=cd;System.out.println("cdplayer的有残构造方法");}public void play(){cd.play();}
}

ApplicationSpring类

import com.geyao.demo.soundSystem.CompactDisc;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class ApplicationSpring {public static void main(String[] args){System.out.println("Application ");ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");CompactDisc cd1=(CompactDisc) context.getBean("compactDisc1");CompactDisc cd2=(CompactDisc) context.getBean("compactDisc2");cd1.play();cd2.play();}
}

appTest类

package com.geyao.demo.souundSystem;import com.geyao.demo.soundSystem.CompactDisc;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class AppTest {@Autowiredprivate CompactDisc compactDisc1;@Autowiredprivate CompactDisc compactDisc12;@Testpublic void testApp(){compactDisc1.play();compactDisc12.play();}}

CDplayerTest

package com.geyao.demo.souundSystem;import com.geyao.demo.soundSystem.CDPlayer;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class CDplayerTest {@Autowiredprivate CDPlayer cdPlayer1;@Testpublic void test01(){cdPlayer1.play();}}

运行结果

compactdisc构造函数
compactdisc构造函数
cdplayer的有残构造方法
播放cd音乐com.geyao.demo.soundSystem.CompactDisc@4b741d6d

 

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

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

相关文章

[高效时间管理]复盘篇

【背景】 2019年本人在公众号中阅读了《时间管理&#xff0c;这篇就够了》&#xff0c;学习了其中的内容并开始记录每日所做&#xff0c;偶尔晚上进行复盘&#xff0c;对督促学习和反思起到一定的作用&#xff0c;故向大家分享经验。 为什么要时间管理&#xff1f; 时间管理…

spring学习(35):c名称空间注入

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(36):注入简单类型

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(37):注入list类型

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(38):注入set类型

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(39):注入map类型

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

NanUI文档 - 如何实现C#与Javascript的相互通信

NanUI文档目录 NanUI简介开始使用NanUI打包并使用内嵌式的HTML/CSS/JS资源使用网页来设计整个窗口如何实现C#与Javascript的相互通信如何处理NanUI中的下载过程 - DonwloadHandler的使用(待更新。。。)如何处理NanUI中的弹窗过程 - LifeSpanHandler的使用(待更新。。。)如何控制…

spring学习(40):注入数组类型

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

PS教程:如何拼图调色出高大上的作品

Hello&#xff0c;小伙伴们&#xff0c;是不是每每看到一些创意海报&#xff0c;就苦于自己不会做&#xff0c;其实合成并不难&#xff0c;掌握原理与技法&#xff0c;接下来就是拼图调色啦&#xff01;首先我们先来看下最终的效果图&#xff0c;铛铛铛&#xff01; 下面我们就…

spring学习(41):属性注入

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

【JS】实时监控页面,input框数值自动求和

需求&#xff1a; 有一个页面需要将input框填入的各个费用自动相加&#xff0c;添加到“合计费用”里。 解决方案&#xff1a; 使用jquery的blur实践&#xff0c;每个费用的Input框检测到失去焦点时&#xff0c;将所有的input框数值相加求和&#xff0c;然后写入到“合计费用”…

spring学习(30):定义第一个bean

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

通过字符串引入模块下的属性

flask中可以配置一个字符串导入settings下的配置文件 app.config.from_object("settings.ProductionConfig")这里就是来讲解一下这个到底是怎么实现的。 例&#xff1a; 这是just_xxx.py里面的内容 # -*- coding: utf-8 -*- # Time : 2019/6/17 上午 11:50 # Auth…

spring学习(42):属性注入注入数组和列表的说明

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(43):属性注入中注入引用对象

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

spring学习(44):p名称空间注入

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

A*算法

文章出处&#xff1a;极客时间《数据结构和算法之美》-作者&#xff1a;王争。该系列文章是本人的学习笔记。 Dijkstra不能解决的问题 在Dijkstra类似BFS&#xff0c;从起始节点找到距离最短的节点&#xff0c;一层一层向外扩展&#xff0c;直到找到目标节点。 在有些时候这种…

spring学习(45):util名称空间注入

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

Jmeter_http request的简单设置和应用

http request 协议、地址、端口号 参数类型 正则搜索 帮助文档 相等的关系 匹配正则的结果&#xff08;jmeter一般都用分组取想用的数据&#xff09; 转载于:https://www.cnblogs.com/rychh/articles/11087537.html

spring学习(46):spring的单例bean

目录结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…