用于创建对象的注解
相当于:
<bean id="" class="">
1.1@Component
注解
作用:
把资源让 spring
来管理。相当于在 xml
中配置一个 bean
。
属性:value
:指定 bean 的 id
。如果不指定 value
属性,默认 bean
的 id
是当前类的类名。首字母小写。
1.2@Controller
@Service
@Repository
注解说明
他们三个注解都是针对一个的衍生注解,他们的作用及属性都是一模一样的。
他们只不过是提供了更加明确的语义化。
@Controller:
一般用于表现层的注解。@Service:
一般用于业务层的注解。@Repository:
一般用于持久层的注解。
细节:如果注解中有且只有一个属性要赋值时,且名称是 value
,value
在赋值是可以不写。
用于注入数据的注解
相当于:
<property name="" ref="">
<property name="" value="">
2.1@Autowired注解说明
@Autowired
作用:
自动按照类型注入。当使用注解注入属性时,set 方法可以省略。它只能注入其他 bean 类型。当有多个
类型匹配时,使用要注入的对象变量名称作为 bean 的 id,在 spring 容器查找,找到了也可以注入成功。找不到
就报错
2.2@Qualifier注解说明
@Qualifier
作用:
在自动按照类型注入的基础之上,再按照 Bean 的 id 注入。它在给字段注入时不能独立使用,必须和@Autowire
一起使用;但是给方法参数注入时,可以独立使用。
属性:value
:指定 bean
的 id
。
2.3@Resource注解说明
@Resource
作用:直接按照 Bean
的 id
注入。它也只能注入其他 bean 类型。
属性:name:指定 bean
的 id
。
2.4@Value
注解说明
@Value
作用:注入基本数据类型和 String 类型数据的
属性:value
:用于指
2.5@Scope
注解说明
@Scope
作用:指定 bean
的作用范围。
属性:value
:指定范围的值。
取值:singleton prototype request session globalsessi
用于改变作用范围的注解
相当于:
<bean id="" class="" scope="">
3.1@Scope
注解说明
@Scope
作用:指定 bean
的作用范围。
属性:value
:指定范围的值。
取值:singleton prototype request session globalsession
和生命周期相关的注解
相当于:
<bean id="" class="" init-method="" destroy-method="" />
4.1@PostConstruct
注解说明
@PostConstruct
作用:用于指定初始化方法
@PreDestroy
注解说明
@PreDestroy
作用:用于指定销毁方法。
Comment here is closed