SpringBoot中实现依赖注入功能

今天给大家介绍一下SpringBoot中是如何实现依赖注入的功能。

在以往Spring使用中,依赖注入一般都是通过在Spring的配置文件中添加bean方法实现的,相对于这个方式SpringBoot的实现方式就显得非常便捷了。SpringBoot的实现方式基本都是通过注解实现的。

下面来看一下具体案例,这里我编写了三个测试类用于测试依赖注入到底是否可以正确实现。

TestBiz接口:

package example.biz;
public interface TestBiz {
    public String getTest(String str);
}

TestBizImp接口实现类:

package example.biz.imp;
import example.biz.TestBiz;
import org.springframework.stereotype.Component;
/**
    @Service用于标注业务层组件
    @Controller用于标注控制层组件(如struts中的action)
    @Repository用于标注数据访问组件,即DAO组件
    @Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
 */
@Component
public class TestBizImp implements TestBiz {
    @Override
    public String getTest(String str) {
        return "Return value is:"+str;
    }
}

这里可以看到上面给出了四个注解,这四个注解其实都可以实现注入的功能,可是他们的用途有所不同,最好要根据具体的业务来添加这些注解。

TestController类:

@Controller
public class TestController {
    @Autowired
    private TestBiz testBiz;
    @RequestMapping("/getTest")
    @ResponseBody
    public String getTest(String str){
        return testBiz.getTest(str);
    }
}

这里需要再接口上面添加@Autowired 这个注解,这个注解的功能就是实现TestBiz的实例化操作,等同于Spring中bean操作。

做完这些之后就可以启动项目,测试依赖注入是否已经实现了。运行结果如下所示:

这样SpringBoot就已经实现依赖注入功能了,是不是比Spring的实现过程要简单的多啊!

如果大家想要源代码或者对本文有啥异议都可以加我QQ:208017534  欢迎打扰哦!!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Spring相关

第3章—高级装配—bean的作用域

单例是默认的作用域,但是正如之前所描述,对于易变的类型,这并不合适.如果选择其他作用域,要使用@Scope注解,他可以和@Component或@Bean一起使用...

722
来自专栏屈定‘s Blog

设计模式--适配器模式的思考

个人认为适配器模式是一种加中间层来解决问题的思想,为的是减少开发工作量,提高代码复用率.另外在对于第三方的服务中使用适配器层则可以很好的把自己系统与第三方依赖解...

955
来自专栏liulun

Nim教程【四】

这是国内第一个关于Nim的系列教程 先说废话 Screenshot (2).png 高雅的Nim Screenshot (3).png 方法 Screens...

20010
来自专栏IT笔记

SpringBoot开发案例之JdbcTemplate批量操作

前言 在我们做后端服务Dao层开发,特别是大数据批量插入的时候,这时候普通的ORM框架(Mybatis、hibernate、JPA)就无法满足程序对性能的要求了...

3889
来自专栏Java Edge

Java中的VO,PO等1.2.3.VO(value object) 值对象

32910
来自专栏Java编程技术

Springboot之spring-boot-autoconfigure模块

Spring的出现给我们管理bean的依赖注入提供了便捷,但是当我们需要使用通过pom引入的jar里面的一个bean时候,还是需要手动在xml配置文件里面主要注...

581
来自专栏PHP在线

了解PHP中Stream(流)的概念与用法

Stream是PHP开发里最容易被忽视的函数系列(SPL系列,Stream系列,pack函数,封装协议)之一,但其是个很有用也很重要的函数。Stream可以翻译...

3375
来自专栏noteless

ServletRequest HttpServletRequest 请求方法 获取请求参数 请求转发 请求包含 请求转发与重定向区别 获取请求头字段

实际为   HttpServletRequest  或者  ServletRequest,   两者都为接口

995
来自专栏青枫的专栏

day33_Spring学习笔记_01

4 + 1:4个核心jar包(beans、core、context、expression)+ 1个依赖jar包(com.springsource.org.apa...

401
来自专栏最高权限比特流

Filter过滤器技术详解

1675

扫码关注云+社区