前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring 基于注解的ioc案例 完全代替xml 详细分析 @Configuration注解的细节

Spring 基于注解的ioc案例 完全代替xml 详细分析 @Configuration注解的细节

原创
作者头像
韦恩少爷的背
修改2020-03-20 10:00:07
5720
修改2020-03-20 10:00:07
举报
文章被收录于专栏:SSM框架学习

spring注解介绍

代码语言:javascript
复制
spring中的新注解
 @Configuration
      作用:指定当前类是一个配置类
      细节:当配置类作为AnnotationConfigApplicationContext对象创建的参数时,该注解可以不写
 @ComponentScan
      作用:用于通过注解指定spring在容器中要扫描的包
      属性:
          value basePackages的作用是一样的,都是用于指定创建容器时要扫描的包
              使用此注解就等同于在xml配置了
              <!-- 告知spring在创建容器时要扫描的包 -->
     <context:component-scan base-package="bruce"></context:component-scan>
 @Bean
      作用:用于把当前方法的返回值作为bean对象存入spring的ioc容器中
      属性:
          name:用于指定bean的id。当不写时,默认值时当前方法的名称
      细节:
          当我们使用注解配置方法时,如果方法有参数,spring框架会去容器中查找有没有可用的bean对象。
          查找的方式和Autowired注解的作用是一样的

一、注解service和dao

代替配置Service和配置dao 如业务层对象 Service

代码语言:javascript
复制
<bean id="accountService" class="bruce.service.impl.AccountServiceImpl"> </bean>

采用注解@Service

在这里插入图片描述
在这里插入图片描述

二、另起一类SpringConfiguration.class(等同于bean.xml)

该类是一个配置类,它的作用和bean.xml是一样的

在这里插入图片描述
在这里插入图片描述

1.@Configuration指出他是一个配置类

2.@ComponentScan告知spring要扫描的包 等同于xml中的

代码语言:javascript
复制
<context:component-scan base-package="bruce"></context:component-scan>

三、用于创建一个QueryRunner对象 创建DataSource对象

@Bean 作为bean对象存入spring的ioc容器中

1.创建一个QueryRunner

在这里插入图片描述
在这里插入图片描述

等同于

在这里插入图片描述
在这里插入图片描述

2.创建DataSource对象

resource下创建properties

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、获取容器

在这里插入图片描述
在这里插入图片描述

@Configuration细节

在这里插入图片描述
在这里插入图片描述

当配置类作为AnnotationConfigApplicationContext对象创建的参数时,@Configuration可以不写

在这里插入图片描述
在这里插入图片描述

但是另一个注解类不能省略

在这里插入图片描述
在这里插入图片描述

如果也不想写就加上就好

在这里插入图片描述
在这里插入图片描述

但是这就变成了兄弟关系 所以这时候可以用@Import 就不用那么花里胡哨了

在这里插入图片描述
在这里插入图片描述

细小配置类都Import到主配置类

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • spring注解介绍
    • 一、注解service和dao
      • 二、另起一类SpringConfiguration.class(等同于bean.xml)
        • 三、用于创建一个QueryRunner对象 创建DataSource对象
          • 1.创建一个QueryRunner
          • 2.创建DataSource对象
        • 四、获取容器
          • @Configuration细节
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档