11Spring IoC注解式开发
2024-01-10 11:32:12
注解的存在主要是为了简化XML的配置。Spring6倡导全注解开发。
注解开发的优点:提高开发效率
注解开发的缺点:在一定程度上违背了OCP原则,使用注解的开发的前提是需求比较固定,变动较小。
1 注解的注解称为元注解
自定义一个注解:
package com.sunsplanter.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(value = {ElementType.TYPE,ElementType.FIELD})
@Retention(value = RetentionPolicy.RUNTIME)
public @interface Component {
String value();
}
- 该注解上面修饰的注解包括:Target注解和Retention注解,这两个注解被称为元注解。
- Target注解用来设置Component注解可以出现的位置,以上代表表示Component注解只能用在类和接口上。
- Retention注解用来设置Component注解的保持性策略.
SOURCE:注解只被保留在Java源文件中,class文件不包含注解.
CLASS:注解最终被保留到class文件中,但不能被反射机制读取.
RUNTIME:注解最终被保留到class文件中,并且可以被反射机制读取.
String value(); 是Component注解中的一个属性。该属性类型String,属性名是value。
2 通过反射机制读取注解
**目标:**当Bean类上有Component注解时,则实例化Bean对象,如果没有,则不实例化对象。
我们准备两个Bean,一个上面有注解,一个上面没有注解。
文章来源:https://blog.csdn.net/m0_46671240/article/details/135497907
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!