spring——依赖注入DI(spring-test方式)
2017-05-01 12:47
477 查看
spring——依赖注入DI(spring-test方式)
本文主要介绍如何实现spring 的依赖注入,并且浅显的讲述一下注入需要注意的事项。1、创建一个maven项目
mvn archetype:generate -DarchetypeCatalog=internal
2、修改pom.xml,引入需要的依赖,首先spring-context,还是spring-test,最后还有junit。
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <springframework.version>4.3.7.RELEASE</springframework.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-context --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springframework.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-test --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${springframework.version}</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> <encoding>utf-8</encoding> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>3.0.0</version> <configuration> <archive> <manifest> <mainClass>com.xueyoucto.xueyou.App</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <!-- this is used for inheritance merges --> <phase>package</phase> <!-- bind to the packaging phase --> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
3、添加类Person和Body
package com.xueyou.demo; import org.springframework.stereotype.Component; @Component public class Person { public String getName() { return name; } public void setName(String name) { this.name = name; } private String name; }
package org.xueyou.demo; import org.springframework.stereotype.Component; @Component public class Body { public int getId() { return id; } public void setId(int id) { this.id = id; } private int id; }
3、在配置类App中,添加ComponentScan。需要注意的是,这里需要指定扫描的包
package com.xueyou.demo; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; /** * Hello world! */ @Configuration @ComponentScan(basePackages = {"org.xueyou.demo","com.xueyou.demo"}) public class App { public static void main(String[] args) { System.out.println("Hello World!"); } }
4、新建一个测试类
package com.xueyou.demo; import org.junit.Assert; 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; import org.xueyou.demo.Body; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = App.class) public class Springtest { @Autowired private Body body; @Autowired private Person person; @Test public void testBodyIsNull(){ Assert.assertNotNull(body); } @Test public void testPersonIsNull(){ Assert.assertNotNull(person); } }
5、运行测试类,结果如下:
6、从运行结果中我们能看到,Person类和Student类已经被依赖注入到spring中,spring能够使用这两个类了。
相关文章推荐
- spring学习总结(三):IOC & DI 配置 Bean 之配置形式及依赖注入方式
- Spring的依赖注入(DI)三种方式
- spring IOC(控制反转)和DI(依赖注入)以及三种依赖注入方式的比较
- spring——依赖注入DI(main函数方式)
- Spring2.5依赖注入方式(DI)
- Spring依赖注入方式:
- Spring的 IOC 依赖注入方式
- spring 依赖注入方式总结详解
- Spring Ioc 之二 -依赖注入的几种方式
- (5) 编码剖析Spring装配基本属性的原理【附加:注入依赖对象的两种方式】
- spring依赖注入的方式
- spring(依赖注入-DI)
- spring 依赖注入之设值注入方式
- spring 依赖对象的注入方式(3种) 和 公共属性的设置abstract="true" parent
- (6) Spring 如何装配 集合类 以及 【第二种 依赖注入 方式】使用 构造器 注入
- spring依赖注入的3种实现方式
- Spring依赖注入的方式
- Spring 常用的几种依赖注入方式
- spring依赖注入方式
- Spring依赖注入方式