@Configuration介绍

Spring3.0之前要使用Spring必须要有一个xml配置文件,这也是Spring的核心文件,而Spring3.0之后可以不要配置文件了,通过注解@Configuration完全搞定。

@Configuration即用来代替Spring配置文件的,它就是一个@Component组件,接收一个value值也就是bean的名字,value可以不填。

@Configuration使用

下面是一个使用实例,创建了一个userService和accountService的实例,accountService实例引用userService实例。

@Configuration

@ComponentScan(basePackages = { "com.test.web" })

@Import(UserConfg.class)

@ImportResource(locations = {"classpath:config/spring-beans.xml"})

public class MainConfg {

@Bean(name = "userService", initMethod = "init", destroyMethod = "destroy")

@Scope("singleton")

public UserService userService() {

return new UserService();

}

@Bean

public AccountService accountService(UserService userService) {

AccountService as = new AccountService();

as.setUserService(userService);

return as;

}

}

注解说明

@Configuration:代表这个类是一个配置类。

@ComponentScan:用来扫描指定包下面的注解类。

@Import:用来导入其他的@Configuration配置类。

@ImportResource:用来导入xml配置文件,比如某些配置一定要xml配置。

@Bean:用来定义一个bean,可以指定初始、销毁方法,及bean范围等。

这些注解都在spring-context包下,还有其他注解用来解放xml形式的配置,大量xml配置可java配置化,只要定义好,Spring会自动扫描包下面的@Configuration注解的配置文件类来装配。

Spring零配置之@Configuration注解详解。相关推荐

  1. Spring零配置之@Configuration注解详解

    转载自 Spring零配置之@Configuration注解详解 @Configuration介绍 Spring3.0之前要使用Spring必须要有一个xml配置文件,这也是Spring的核心文件,而 ...

  2. @Configuration注解详解

    @Configuration注解详解 Configuration代码简介 Configuration注释类表明其主要目的是作为bean定义的源:@Configuration类允许通过调用同一类中的其他@B ...

  3. Spring Boot 配置加载顺序详解

    使用 Spring Boot 会涉及到各种各样的配置,如开发.测试.线上就至少 3 套配置信息了.Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发.测试.线上环境使用不同的配置. 在 ...

  4. java jpa注解哪个包好,Spring Data JPA 中常用注解详解

    一.java对象与数据库字段转化 @Entity:标识实体类是JPA实体,告诉JPA在程序运行时生成实体类对应表 @Table:设置实体类在数据库所对应的表名 @Id:标识类里所在变量为主键 @Gen ...

  5. Spring Boot注解详解

    文章目录 使用注解的优势 注解详解(配备了完善的释义) 注解列表如下 JPA注解 springMVC相关注解 全局异常处理 项目中具体配置解析和使用环境 使用注解的优势 采用纯java代码,不在需要配 ...

  6. spring注解详解与用法(总览)

    这篇文章收集了我写的所有的spring注解的详细说明与用法,点击可以跳转到对应文章,此文章会不断更新 spring注解详解与用法(1)最基础也是最常见的如下所示,详情点击这里 @Controller/ ...

  7. spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)

    spring学习笔记03-spring-DI-依赖注入详解 1.概念 2.构造函数注入 3.set方法注入 4.集合的注入 需要被注入的实体对象 package com.itheima.service ...

  8. Spring Cache常用注解详解

    Spring Cache常用注解详解 @EnableCaching 开启Spring Cache框架支持.解析对应的注解,实现缓存读写访问 @CacheConfig 缓存配置,可以配置当前类型中所用缓 ...

  9. Spring data JPA 之 Jackson 在实体里面的注解详解

    8 Spring data JPA 之 Jackson 在实体里面的注解详解 经过前⾯课时的讲解,相信你已经对实体⾥⾯的 JPA 注解有了⼀定的了解,但是实际⼯作中你会发现实体⾥⾯不仅有 JPA 的注 ...

最新文章

  1. 【编程开发】Python隐藏属性——使用双下划线标识私有属性,外部不可直接访问...
  2. Network 之四 常用 Linux 网络命令及网络调试工具介绍
  3. boost::safe_numerics::base_type相关的测试程序
  4. c语言中return的作用_C语言入门基础整理
  5. sigsuspend函数(mysleep函数的改进)
  6. Python运行环境与异常处理
  7. mac的safari浏览器调试h5
  8. java函数void返回值是,Java中main()函数的返回值是什么( )。A、StringB、intC、c......
  9. python爬虫:爬取某网站视频
  10. 基于内容的视频标注——关键帧图象层标注
  11. AndroidStudio中获得的VersionCode一直为1和VersionName一直为1.0
  12. 旧金山散记(一):第一次在美国打车
  13. 学科分类与代码_考研常识 | 2021硕士研究生学科门类、一级学科、二级学科、专业目录及代码查询...
  14. plc编程不是c语言,PLC编程中的五个常见问题
  15. RabbitMQ安装及使用教程
  16. 怎么用python扫描主机_如何调用python-nmap来实现扫描局域网存活主机(代码)
  17. 天线设计相关性能参数
  18. 在Office的Excel中打开WPS很慢
  19. finecms基础操作
  20. 必背C语言算法 C语言小写转大写

热门文章

  1. 按键精灵post教程_【按键精灵教程】更为强大的HTTP方法
  2. left join效率为什么低_为什么自考的你学习效率特别低?对号入座
  3. php如何让B链接在当前页面打,javascript - 如何实现点击链接 A 弹出窗口 X,点击链接 B 继续在弹出窗口 X (刷新)打开?...
  4. 游戏盒子源码_如何用8K电视盒子组建“家庭影院”(设备入门篇)
  5. 发外链网站服务器瘫痪,哪些操作可以导致网站接入瘫痪 - 搜外SEO问答
  6. python猴子选大王讲解_关于猴子选大王的面试题
  7. Ancient Messages UVA - 1103
  8. Java学习之字符与ASCII码相互转换的面板设计
  9. 表字段出现oracle sql语句关键字时
  10. java快速排序泛型_泛型算法_快速排序源码