spring注解

@Required

适用于bean属性setter方法。

此注释仅表示受影响的bean属性必须在配置时填充,通过bean定义中的显式属性值或通过自动装配填充。如果尚未填充受影响的bean属性,容器将引发异常。

@Autowired

注释应用于构造函数。

当 Spring遇到一个在 setter 方法中使用的 @Autowired 注解,它会在方法中执行 byType 自动装配。 

@Qualifier 

当你创建多个具有相同类型的 bean 时,并且想要用一个属性只为它们其中的一个进行装配,在这种情况下,你可以使用 @Qualifier 注释和 @Autowired 注释通过指定哪一个真正的 bean 将会被装配来消除混乱。

public class Profile {
   @Autowired
   @Qualifier("student1")
   private Student student;
   public Profile(){
      System.out.println("Inside Profile constructor." );
   }
      ...

 @Configuration 

带有 @Configuration 的注解类表示这个类可以使用 Spring IoC 容器作为 bean 定义的来源。

@Bean

@Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。

添加的bean的id作为方法名,也支持指定任意的初始化和销毁的回调方法。

@Configuration
public class HelloWorldConfig {
   @Bean (initMethod = "init", destroyMethod = "cleanup" )
   public HelloWorld helloWorld(){
      return new HelloWorld();
   }
}

上面的代码将等同于下面的 XML 配置:

<beans>
   <bean id="helloWorld" class="com.tutorialspoint.HelloWorld" />
</beans>

@import 

它注解允许从另一个配置类中加载 @Bean 定义。

当实例化上下文时,不需要同时指定 ConfigA.class 和 ConfigB.class,只有 ConfigB 类需要提供。

@Import(ConfigA.class)
public class ConfigB {
    ...
}

 @component

把普通pojo实例化到spring容器中,相当于配置文件中的<bean id=" " class=" "/>

泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。

@ComponentScan

该注解默认会扫描该类所在的包下所述的配置类,相当于之前的<context:component-scan>。

两者等效:

@ComponentScan(basePackages = "org.example")
public class AppConfig  {
    ...
}
<context:component-scan base-package="org.example"/>

 

转载于:https://www.cnblogs.com/ican-fly/p/11289667.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值