Spring中常用的注解及作用
@Component(value)
配置类,当使用该注解时,SpringIOC会将这个类自动扫描成一个bean实例
不写的时候,默认是类名,且首字母小写
@ComponentScan
默认是代表进行扫描当前包
含有两个参数:
basePackages:可以扫描多个包,是一个数组类型,可能会造成产生多个Bean实例
basePackageClasses:可以扫描多个方法,是一个数组类型,可能会造成产生多个Bean实例
@Autowired
自动装配,会根据类型寻找指定的Bean,required:表示假如说在bean目录下找不到指定的注解还需不需要注入,默认是true 修改为false时,表示假如说没有找到可以允许不注入。
@Primary
表示当通过一个接口或者抽象类注入时,存在多个实现类,那么使用该注解可以告诉IOC,优先注入Parmary修饰的
@Qualifier
假如说按名称查询指定的方法时,采用Qulifier(方法名)
@Bean
当使用该注解时,SpringIOC会将这个方法自动扫描成一个bean实例
不写的时候,默认是方法名,且首字母小写
可以使用bean 中设置name(bean的名字),autowire是否是一个引用的Bean方法默认值Autowire.NO,initMothed初始化方法,destroyMethod销毁方法
@Scope
可以是用该该注解设置多个bean对象
@ImportResource({"classpath:xxx.xml"})
能够读取多个xml文件,这样就可以引入多个xml定义的bean
@Import({xx.class,xxx.class})
能够读取多个class文件
@Profile
使用该注解可以给spring配置多个数据源 连接池对象
在bean中配置时,
可以使用<beans profile="数据源1"></beans>
<beans profile="数据源2"></beans>
1.在类中配置,使用时,需要在指定的类中激活
@ActiveProfiles("数据源1")
2.在虚拟中配置
3.在web.xml文件中配置
<init-param>
<param-name>spring.profiles.active</param-name>
<param-name>数据源1</param-name>
</init-param>
<init-param>
<param-name>spring.profiles.active</param-name>
<param-name>数据源2</param-name>
</init-param>
还有两种
加载配置文件:
使用注解:@PropertySource(value="classpath:xxx")
使用xml文件配置 <context:property-placeholder location="classpath:db.properties"/>
@Contional({xx.class})(了解)
可以条件化,装配bean;
@Value("#{xxx}")
可以直接给属性赋值
也可以直接给bean元素赋值
Spring中常用的注解及作用的更多相关文章
- Spring中常用的注解(@Entity,@Table,@Column,@Repository,@Service)
当项目变得比较大的时候,如何还使用hbm.xml文件来配置Hibernate实体就会变得比较复杂.这里Hibernate提供了Annotation注解方式,使得Hibernate的映射文件变得很方便管 ...
- Spring中常用的注解,你知道几个呢?
今天给大家分享下Spring中一般常用的注解都有哪些.可能很多人做了很长是了但有些还是不知道一些注解,不过没有关系,你接着往下看. Spring部分 1.声明bean的注解 @Component 组件 ...
- Spring 中常用的注解
(1).用于注册bean对象的注解 1.1@Component: 作用: 调用无参构造创建一个bean对象,并把对象存入spring的Ioc容器,交由spring容器进行管理.相当于在xml中配置一个 ...
- spring中常用的注解
使用注解来构造IoC容器 用注解来向Spring容器注册Bean.需要在applicationContext.xml中注册<context:component-scan base-package ...
- Junit中常用的注解说明
Java注解((Annotation)的使用方法是@注解名 ,能通过简单的词语来实现一些功能.在junit中常用的注解有@Test.@Ignore.@BeforeClass.@AfterClass.@ ...
- 简单了解Spring中常用工具类_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...
- 第5章—构建Spring Web应用程序—关于spring中的validate注解后台校验的解析
关于spring中的validate注解后台校验的解析 在后台开发过程中,对参数的校验成为开发环境不可缺少的一个环节.比如参数不能为null,email那么必须符合email的格式,如果手动进行if判 ...
- spring 中常用的配置项
1.spring 中常用的配置项 application.properties #端口 server.port=8081 #调试模式 debug=false #上下文 #一般情况下,小项目通常都是在t ...
- Spring 中aop切面注解实现
spring中aop的注解实现方式简单实例 上篇中我们讲到spring的xml实现,这里我们讲讲使用注解如何实现aop呢.前面已经讲过aop的简单理解了,这里就不在赘述了. 注解方式实现aop我们 ...
随机推荐
- Bran的内核开发教程(bkerndev)-05 打印到屏幕
打印到屏幕 现在, 我们需要尝试打印到屏幕上.为此, 我们需要管理屏幕滚动, 如果能允许使用不同的颜色就更好了.好在VGA视频卡为我们提供了一片内存空间, 允许同时写入属性字节和字符字节对, 可以 ...
- 初识域渗透利器Empire
Empire 是一款类似Metasploit 的渗透测试框架,基于python 编写,Empire是一个纯粹的PowerShell 后开发代理,建立在密码安全通信和灵活的架构上.Empire 实现了无 ...
- 【Python秘籍】numpy到tensor的转换
在用pytorch训练神经网络时,我们常常需要在numpy的数组变量类型与pytorch中的tensor类型进行转换,今天给大家介绍一种它们之间互相转换的方法. 一.numpy到tensor 首先我们 ...
- opencv实践::透视变换
问题描述 拍摄或者扫描图像不是规则的矩形,会对后期处理产生不 好影响,需要通过透视变换校正得到正确形状. 解决思路 通过二值分割 + 形态学方法 + Hough直线 +透视变换 #include &l ...
- 概念理解-IO多路复用
epoll 是 Linux 内核为处理大批量文件描述符而作了改进的 poll,是 Linux 下多路复用 IO接口 select/poll 的增强版本 在 linux 的网络编程中,很长时间都在使用 ...
- MFC::使用mysql
下载mysql-installer-community-5.7.16.0.msi,安装 mysql server即可. 创建工程包含头文件 #include "winsock.h" ...
- NOMP矿池搭建
本文将以dash(x11)和Raven(x16rv2)为例子来说明多算法矿池的搭建过程. 1 环境准备 1.1 准备Ubuntu 准备虚拟机或物理机,操作系统为Ubuntu 16.04 1.2 安装必 ...
- 百万年薪python之路 -- python2和python3的区别
python2和python3的区别: python2获取的是整数 python3获取的是浮点数 print函数:(Python3中print为一个函数,必须用括号括起来:Python2中print为 ...
- django测试开发-1.开始Hello django!
用python开发出一个web页面的时候,需要找一个支持python语言的web框架.django框架有丰富的文档和学习资料,也是非常成熟的web开发框架,本篇写一个简单的“hello django! ...
- The usage of Markdown---文字强调:加粗/斜体/文本高亮/删除线/下划线/按键效果
更新时间:2019.09.14 1. 序言 有时候,我们需要对某些文字进行强调,例如粗体和斜体.而Markdown通常可以使用星号*或者下划线_进行文字强调. 2. 加粗 如果想要达到加粗的效果,可以 ...