概念理解
注解不同于注释,注释是用来提示开发者的,而注解则是在程序运行时用于提示计算机的。有些注解可直接影响到代码的运行。
五种元注解
元注解就是注解的注解,用于对注解的规范。可以用于其他注解上。
**@Retention:**解释说明注解的存活时间。
它的取值如下:
—— RetentionPolicy.SOURCE 注解只在源码阶段保留,在编译器进行编译时它将被丢弃忽视。
——RetentionPolicy.CLASS 注解只被保留到编译进行的时候,它并不会被加载到 JVM 中。
——RetentionPolicy.RUNTIME 注解可以保留到程序运行的时候,它会被加载进入到 JVM 中,所以在程序运行时可以获取到它们。
**@Documented:**能够将注解中的元素包含到 Javadoc 中去。
**@Inherited:**如果一个父类被 @Inherited 注解过的注解进行注解的话,那么如果它的子类没有被任何注解应用的话,那么这个子类就继承了父类的注解。
**@Repeatable:**注解的值可以同时取多个。
预置注解
也就是java提供的现成注解
**@Deprecated:**标记过时方法、类等信息
**@Override:**父类中被此注解标记的方法必须在子类中重写
**@SuppressWarnings:**被注解的方法运行时其他注解发出警告会被此注解阻止。
**@SafeVarargs:**它的目的是提醒开发者不要用参数做一些不安全的操作,它的存在会阻止编译器产生 unchecked 这样的警告。它是在 Java 1.7 的版本中加入的。
**@FunctionalInterface:**函数式接口 (Functional Interface) 就是一个具有一个方法的普通接口。
自定义注解
自定义注解的属性也叫做成员变量。注解只有成员变量,没有方法。注解的成员变量在注解的定义中以“无形参的方法”形式来声明,其方法名定义了该成员变量的名字,其返回值定义了该成员变量的类型。
格式:
@元注解
public @interface 注解名{
String 属性名() default "属性默认值";
}
注解的定义与获取实例:
1、定义一个注解:

2、创建一个需要注释的类并添加注释(可对注释的属性赋值):

3、创建一个方法类实现对注释的解析并取值:

引入context命名空间:
通过component注释将类放入spring容器中,并加以应用
1、配置applicationContext.xml文件:

2、在目标类中添加component注释:

此处的@Component(“testclass1”)相当于在applicationContext.xml中加入:
<bean id="testclass1" class="路径"></bean>

3、创建方法通过testclass2来引用testclass1对象:

其他注解功能
@Service用于标注业务层组件、服务层注解
@Controller用于标注控制层组件(如struts中的action)、控制层注解
@Repository用于标注数据访问组件,即DAO组件。持久层注解
本文围绕Java注解展开,介绍了注解与注释的区别,注解可在程序运行时提示计算机。详细阐述了五种元注解,如@Retention规定注解存活时间;还介绍了预置注解、自定义注解的定义与使用,以及在Spring中通过注解将类放入容器,最后提及@Service等其他注解功能。
188

被折叠的 条评论
为什么被折叠?



