自定义注解整理 篇一
来源:互联网 发布:在线视频录制软件 编辑:程序博客网 时间:2024/06/06 08:28
根据自己的需求有时候需要自定义一些注解来实现自己的功能,自定义注解必须了解的如下:
1.public @interface 注解名称。 -- 申明注解
2.注解的属性的定义如下 类型 名称() 默认值 eg:boolean needSave() default false;
eg: 表单验证的token
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface Token {
boolean needSave() default false;
boolean needRemove() default false;
// 定义SESSION中存放
String sessionKey() default "interceptorToken";
}
名词解释:
@Target 定义注解的作用目标。定义的源码如下:
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Target {
ElementType[] value();
}
@retention定义注解类的生命周期。定义的源代码如下:
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Retention {
RetentionPolicy value();
}
@inherit 允许子类继承父类的注解
其中
1.@Target里面的ElementType是用来指定Annotation类型可以用在哪一些元素上的.说明一下:TYPE(类型), FIELD(属性), METHOD(方法), PARAMETER(参数), CONSTRUCTOR(构造函数),LOCAL_VARIABLE(局部变量), ANNOTATION_TYPE,PACKAGE(包),其中的TYPE(类型)是指可以用在Class,Interface,Enum和Annotation类型上. [color=#FF6600]注:如果没有指定ElementType则可以用在任何类型上面[/color]。
2.@Documented的目的就是让这一个Annotation类型的信息能够显示在javaAPI说明文档上;没有添加的话,使用javadoc生成API文档的时候就会找不到这一个类型生成的信息
3.@Retention里面的RetentionPolicy是枚举类,对应的数据有:
1.RetentionPolicy.SOURCE —— 这种类型的Annotations只在源代码级别保留,编译时就会被忽略
2.RetentionPolicy.CLASS —— 这种类型的Annotations编译时被保留,在class文件中存在,但JVM将会忽略
3.RetentionPolicy.RUNTIME —— 这种类型的Annotations将被JVM保留,所以他们能在运行时被JVM或其他使
1.public @interface 注解名称。 -- 申明注解
2.注解的属性的定义如下 类型 名称() 默认值 eg:boolean needSave() default false;
eg: 表单验证的token
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface Token {
boolean needSave() default false;
boolean needRemove() default false;
// 定义SESSION中存放
String sessionKey() default "interceptorToken";
}
名词解释:
@Target 定义注解的作用目标。定义的源码如下:
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Target {
ElementType[] value();
}
@retention定义注解类的生命周期。定义的源代码如下:
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Retention {
RetentionPolicy value();
}
@inherit 允许子类继承父类的注解
其中
1.@Target里面的ElementType是用来指定Annotation类型可以用在哪一些元素上的.说明一下:TYPE(类型), FIELD(属性), METHOD(方法), PARAMETER(参数), CONSTRUCTOR(构造函数),LOCAL_VARIABLE(局部变量), ANNOTATION_TYPE,PACKAGE(包),其中的TYPE(类型)是指可以用在Class,Interface,Enum和Annotation类型上. [color=#FF6600]注:如果没有指定ElementType则可以用在任何类型上面[/color]。
2.@Documented的目的就是让这一个Annotation类型的信息能够显示在javaAPI说明文档上;没有添加的话,使用javadoc生成API文档的时候就会找不到这一个类型生成的信息
3.@Retention里面的RetentionPolicy是枚举类,对应的数据有:
1.RetentionPolicy.SOURCE —— 这种类型的Annotations只在源代码级别保留,编译时就会被忽略
2.RetentionPolicy.CLASS —— 这种类型的Annotations编译时被保留,在class文件中存在,但JVM将会忽略
3.RetentionPolicy.RUNTIME —— 这种类型的Annotations将被JVM保留,所以他们能在运行时被JVM或其他使
1 0
- 自定义注解整理 篇一
- spring 自定义注解整理 篇二
- 自定义注解(一)
- 自定义Java注解(一)
- 自定义注解【一】
- 注解(Annotation)自定义注解(一)
- 自定义注解的学习(一)
- java自定义注解及注解使用(注解学习一)
- Java注解(一):注解介绍及自定义注解入门
- Java:Annotation 浅析(一 )自定义注解
- (A6,一)java自定义注解
- 自定义注解之编译时注解(RetentionPolicy.CLASS)(一)
- 自定义注解之编译时注解(RetentionPolicy.CLASS)(一)
- 注解 整理
- 注解整理
- 自定义注解
- 自定义注解
- 自定义注解
- 在Eclipse中使用JUnit4进行单元测试(中级篇)
- 我们的weui
- Hadoop学习路线图
- Hive数据仓库笔记(三)
- 第14周 《C语言及程序设计》程序阅读——数组与指针
- 自定义注解整理 篇一
- Androidstudio中gradle配置和使用
- Qt学习十:日历组件
- iOS开发调试技巧(一)
- log4j配置类日志输出到独立的文件
- Linux学习之Vim(二)---为vim 配置solorized方案
- 一起温故数据库模型设计三种范式
- 9-12插入节点appendChild()
- moudule.js:338 throw err; Error: Cannot find module 'webpack/lib/node/NodeTemplatePlugin'