Spring及其周边常用注解

本文详细介绍了 Spring 框架中用于声明 Bean 和注入 Bean 的各类注解,包括 @Component, @Service, @Repository, @Controller 以及 @Autowired, @Resource, @Inject 等,并解释了它们的应用场景及差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、声明Bean的注解

@Component 组件,没有明确的角色(不好分类,但要Spring管理)  

@Service 在业务逻辑层使用(XxxServiceImpl上使用)  

@Repository 在数据访问层/持久层使用  

@Controller 在展现层/控制层使用(XxxController)
@Bean  不同于上面四个注解是类级别的,Bean是方法级的,优点是加载第三方实例时肯定无法用类级别的注解。  

2、注入Bean的注解                                                                                                                                                  

@Autowired 由Spring提供  

@Resource 由JSR-250提供

@Inject 由JSR-330提供  
 
// 以上三个注解都可使用在属性上或(setter)方法上
	// tip: Inject注解的使用
	<dependency>
		<groupId>javax.inject</groupId>
		<artifactId>javax.inject</artifactId>
		<version>1</version>
	</dependency>
	
	import javax.inject.Inject;

	public class Demo0 {

		@Inject
		public Demo1 demo1;
	}
@Qualifier("实例名") 当注入的接口有多种实现时,声明注入哪种实现类  

全注解实现配置的情况下,部分情况用xml配置并加载,该注解一般加在配置类上
@ImportResource({"classpath:aaa.xml","classpath:bbb.xml"})




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值