Java框架 ------- spring 借助注解(autowired,resoutce,componet)

 

一、对注入对象的注解

1、在applicationContext.xml 中添加

<context:annotation-config/>

声明使用注解的方式进行配置

并在student 的bean 中将,引用的class 类注释掉,不在bean 中引用

 

 这时在执行会报错找不到

要达到上述注释语句相同效果,

1、在student 的model类中使用 @Autowired 注解在 class 类变量或setter() 方法上声明

@Autowired :用于对 Bean 的属性变量、属性的 Set 方法及构造函数进行标注,配合对应的注解处理器完成 Bean 的自动配置工作。默认按照 Bean 的类型进行装配

 

 2、@Resource其作用与 Autowired 一样。其区别在于 @Autowired 默认按照 Bean 类型装配,而 @Resource 默认按照 Bean 实例名称进行装配。

@Resource 中有两个重要属性:name 和 type。
Spring 将 name 属性解析为 Bean 实例名称,type 属性解析为 Bean 实例类型。如果指定 name 属性,则按实例名称进行装配;如果指定 type 属性,则按 Bean 类型进行装配。
如果都不指定,则先按 Bean 实例名称装配,如果不能匹配,则再按照 Bean 类型进行装配;如果都无法匹配,则抛出 NoSuchBeanDefinitionException 异常。

 

 

 

二、对Bean 的注解

1、在applicationContext.xml 中将bean 去掉只留下 

<context:component-scan base-package="com.obge.model"/>

2、借助@Component 注解直接在实体类中进行声明该类为bean

@Component:可以使用此注解描述 Spring 中的 Bean,但它是一个泛化的概念,仅仅表示一个组件(Bean),并且可以作用在任何层次。使用时只需将该注解标注在相应类上即可。

 

  运行测试

 

posted on 2021-04-12 17:36  obge  阅读(155)  评论(0编辑  收藏  举报