Spring零配置之@Configuration注解详解。
@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注解详解。相关推荐
- Spring零配置之@Configuration注解详解
转载自 Spring零配置之@Configuration注解详解 @Configuration介绍 Spring3.0之前要使用Spring必须要有一个xml配置文件,这也是Spring的核心文件,而 ...
- @Configuration注解详解
@Configuration注解详解 Configuration代码简介 Configuration注释类表明其主要目的是作为bean定义的源:@Configuration类允许通过调用同一类中的其他@B ...
- Spring Boot 配置加载顺序详解
使用 Spring Boot 会涉及到各种各样的配置,如开发.测试.线上就至少 3 套配置信息了.Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发.测试.线上环境使用不同的配置. 在 ...
- java jpa注解哪个包好,Spring Data JPA 中常用注解详解
一.java对象与数据库字段转化 @Entity:标识实体类是JPA实体,告诉JPA在程序运行时生成实体类对应表 @Table:设置实体类在数据库所对应的表名 @Id:标识类里所在变量为主键 @Gen ...
- Spring Boot注解详解
文章目录 使用注解的优势 注解详解(配备了完善的释义) 注解列表如下 JPA注解 springMVC相关注解 全局异常处理 项目中具体配置解析和使用环境 使用注解的优势 采用纯java代码,不在需要配 ...
- spring注解详解与用法(总览)
这篇文章收集了我写的所有的spring注解的详细说明与用法,点击可以跳转到对应文章,此文章会不断更新 spring注解详解与用法(1)最基础也是最常见的如下所示,详情点击这里 @Controller/ ...
- spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)
spring学习笔记03-spring-DI-依赖注入详解 1.概念 2.构造函数注入 3.set方法注入 4.集合的注入 需要被注入的实体对象 package com.itheima.service ...
- Spring Cache常用注解详解
Spring Cache常用注解详解 @EnableCaching 开启Spring Cache框架支持.解析对应的注解,实现缓存读写访问 @CacheConfig 缓存配置,可以配置当前类型中所用缓 ...
- Spring data JPA 之 Jackson 在实体里面的注解详解
8 Spring data JPA 之 Jackson 在实体里面的注解详解 经过前⾯课时的讲解,相信你已经对实体⾥⾯的 JPA 注解有了⼀定的了解,但是实际⼯作中你会发现实体⾥⾯不仅有 JPA 的注 ...
最新文章
- 【编程开发】Python隐藏属性——使用双下划线标识私有属性,外部不可直接访问...
- Network 之四 常用 Linux 网络命令及网络调试工具介绍
- boost::safe_numerics::base_type相关的测试程序
- c语言中return的作用_C语言入门基础整理
- sigsuspend函数(mysleep函数的改进)
- Python运行环境与异常处理
- mac的safari浏览器调试h5
- java函数void返回值是,Java中main()函数的返回值是什么( )。A、StringB、intC、c......
- python爬虫:爬取某网站视频
- 基于内容的视频标注——关键帧图象层标注
- AndroidStudio中获得的VersionCode一直为1和VersionName一直为1.0
- 旧金山散记(一):第一次在美国打车
- 学科分类与代码_考研常识 | 2021硕士研究生学科门类、一级学科、二级学科、专业目录及代码查询...
- plc编程不是c语言,PLC编程中的五个常见问题
- RabbitMQ安装及使用教程
- 怎么用python扫描主机_如何调用python-nmap来实现扫描局域网存活主机(代码)
- 天线设计相关性能参数
- 在Office的Excel中打开WPS很慢
- finecms基础操作
- 必背C语言算法 C语言小写转大写
热门文章
- 按键精灵post教程_【按键精灵教程】更为强大的HTTP方法
- left join效率为什么低_为什么自考的你学习效率特别低?对号入座
- php如何让B链接在当前页面打,javascript - 如何实现点击链接 A 弹出窗口 X,点击链接 B 继续在弹出窗口 X (刷新)打开?...
- 游戏盒子源码_如何用8K电视盒子组建“家庭影院”(设备入门篇)
- 发外链网站服务器瘫痪,哪些操作可以导致网站接入瘫痪 - 搜外SEO问答
- python猴子选大王讲解_关于猴子选大王的面试题
- Ancient Messages UVA - 1103
- Java学习之字符与ASCII码相互转换的面板设计
- 表字段出现oracle sql语句关键字时
- java快速排序泛型_泛型算法_快速排序源码