spring依赖注入的三种方式列举,spring实现依赖注入的几种方式

  spring依赖注入的三种方式列举,spring实现依赖注入的几种方式

  

目录

弹簧依赖注入DI1、创建一个专家项目2、修改pom.xml3、添加类人和正文4,在配置类应用中,添加组件扫描5,新建一个测试类6、运行测试类7、从运行结果中我们能看到弹簧试验依赖无法使用问题

 

  

spring依赖注入DI

 

  

1、创建一个maven项目

mvn原型:生成-DarchetypeCatalog=内部

 

  

2、修改pom.xml

引入需要的依赖,首先春天的背景,还是春季测试,最后还有朱尼特.

 

  属性项目。建造。sourceencodingutf-8/项目。建造。spring框架源代码编码。版本4。3 .7 .释放/弹簧框架。版本/属性依赖项依赖项groupId JUnit/groupId artifact id JUnit/artifact id版本4.12/版本范围测试/范围/依赖项!-https://mvn存储库。com/artifact/org。spring framework/spring-context-dependency groupIdorg.springframework/groupId artifact id spring-context/artifact id版本$ { spring framework。版本}/版本/依赖关系!-https://虚拟存储库。com/artifact/org。spring framework/spring-test-dependency groupIdorg.springframework/groupId artifact id spring-test/artifact id版本$ { spring framework。版本}/版本/依赖性/依赖性构建插件groupIdorg.apache.maven.plugins/groupId artifact id maven-编译器-插件/artifactId配置源1.8/源具体目标1.8目标编码输出f-8/编码/配置/插件插件artifact id maven-assembly-plugin/artifact id版本3 .0 .0/版本

  >                <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;@Componentpublic 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;@Componentpublic class Body {    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    private int id;}

 

  

4、在配置类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!");    }}

 

  

5、新建一个测试类

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);    }}

 

  

6、运行测试类

结果如下:

 

  

 

  

 

  

7、从运行结果中我们能看到

Person类和Student类已经被依赖注入到spring中,spring能够使用这两个类了。

 

  

 

  

spring-test依赖无法使用问题

<dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-test</artifactId>            <version>4.3.7.RELEASE</version>            <scope>test</scope></dependency>

去掉

 

  

<scope>test</scope>

好了,解决!以上为个人经验,希望能给大家一个参考,也希望大家多多支持盛行IT。

 

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • spring编程式事务处理,spring编程事务
  • spring编程式事务处理,spring编程事务,详解Spring学习之编程式事务管理
  • spring的核心功能模块有几个,列举一些重要的spring模块
  • spring的核心功能模块有几个,列举一些重要的spring模块,七个Spring核心模块详解
  • spring注解和springmvc的注解,SpringMVC常用注解
  • spring注解和springmvc的注解,SpringMVC常用注解,详解springmvc常用5种注解
  • spring实现ioc的四种方法,spring的ioc的三种实现方式
  • spring实现ioc的四种方法,spring的ioc的三种实现方式,简单实现Spring的IOC原理详解
  • spring事务失效问题分析及解决方案怎么做,spring 事务失效情况
  • spring事务失效问题分析及解决方案怎么做,spring 事务失效情况,Spring事务失效问题分析及解决方案
  • spring5.0新特性,spring4新特性
  • spring5.0新特性,spring4新特性,spring5新特性全面介绍
  • spring ioc以及aop原理,springmvc aop原理
  • spring ioc以及aop原理,springmvc aop原理,深入浅析Spring 的aop实现原理
  • Spring cloud网关,spring cloud zuul作用
  • 留言与评论(共有 条评论)
       
    验证码: