Java 自定义注解
在spring的应用中,经常使用注解进行开发,这样有利于加快开发的速度。
介绍一下自定义注解:
首先,自定义注解要新建一个@interface,这个是一个注解的接口,在此接口上有这样几个注解:
@Documented 标记生成javadoc
@Retention 注解的生存期,取值有:
|
取值 |
描述 |
|
SOURCE |
在源文件中有效(即源文件保留,领盒饭)。 |
|
CLASS |
在 class 文件中有效(即 class 保留,领盒饭)。 |
|
RUNTIME |
在运行时有效(即运行时保留) |
@Target 标注的目标,取值有
|
CONSTRUCTOR |
用于描述构造器(领盒饭)。 |
|
FIELD |
用于描述域(领盒饭)。 |
|
LOCAL_VARIABLE |
用于描述局部变量(领盒饭)。 |
|
METHOD |
用于描述方法。 |
|
PACKAGE |
用于描述包(领盒饭)。 |
|
PARAMETER |
用于描述参数。 |
|
TYPE |
用于描述类或接口(甚至 enum )。 |
@Inherited 标记继承关系
实例:创建一个作用于类的注解@Person
1.先创建一个注解类 Person
package com.wuyu.annotation; import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; @Documented
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface Person {
String name() default "";
int age() default 0;
}
2.创建测试类
package com.wuyu.annotation; @Person(name="test")
public class Test {
public static void main(String[] args) {
getPersion(Test.class);
}
public static void getPersion(Class<?> c){
if(c.isAnnotationPresent(Person.class)){
Person person = c.getAnnotation(Person.class);
if(person != null){
System.out.println("name=" + person.name() + ",age=" + person.age());
}
}
}
}
3.执行结果:
name=test,age=0
Java 自定义注解的更多相关文章
- java自定义注解类
一.前言 今天阅读帆哥代码的时候,看到了之前没有见过的新东西, 比如java自定义注解类,如何获取注解,如何反射内部类,this$0是什么意思? 于是乎,学习并整理了一下. 二.代码示例 import ...
- java自定义注解实现前后台参数校验
2016.07.26 qq:992591601,欢迎交流 首先介绍些基本概念: Annotations(also known as metadata)provide a formalized way ...
- java自定义注解注解方法、类、属性等等【转】
http://anole1982.iteye.com/blog/1450421 http://www.open-open.com/doc/view/51fe76de67214563b20b385320 ...
- java自定义注解知识实例及SSH框架下,拦截器中无法获得java注解属性值的问题
一.java自定义注解相关知识 注解这东西是java语言本身就带有的功能特点,于struts,hibernate,spring这三个框架无关.使用得当特别方便.基于注解的xml文件配置方式也受到人们的 ...
- Java自定义注解的实现
Java自定义注解的实现,总共三步(eg.@RandomlyThrowsException): 1.首先编写一个自定义注解@RandomlyThrowsException package com.gi ...
- Java自定义注解源码+原理解释(使用Java自定义注解校验bean传入参数合法性)
Java自定义注解源码+原理解释(使用Java自定义注解校验bean传入参数合法性) 前言:由于前段时间忙于写接口,在接口中需要做很多的参数校验,本着简洁.高效的原则,便写了这个小工具供自己使用(内容 ...
- JAVA自定义注解 ------ Annotation
日常开发工作中,合理的使用注解,可以简化代码编写以及使代码结构更加简单,下面记录下,JAVA自定义注解的开发过程. 定义注解声明类. 编写注解处理器(主要起作用部分). 使用注解. 相关知识点介绍, ...
- Java自定义注解和运行时靠反射获取注解
转载:http://blog.csdn.net/bao19901210/article/details/17201173/ java自定义注解 Java注解是附加在代码中的一些元信息,用于一些工具在编 ...
- JAVA自定义注解
在学习使用Spring和MyBatis框架的时候,使用了很多的注解来标注Bean或者数据访问层参数,那么JAVA的注解到底是个东西,作用是什么,又怎样自定义注解呢?这篇文章,即将作出简单易懂的解释. ...
随机推荐
- eclipse通过JDBC连接数据库不成功
配置时出现以下错误: java.lang.ClassNotFoundException:org.gjt.mm.mysql.Driver 则肯定是CLASSPATH设置有问题,也有可能是命令行方式没有重 ...
- 2015项目timeline
1. app签到 http://h5.a.rongyi.com/html/app/sign/index.html (pc无效果.app端 20160105) 2.圣诞活动--砍价 http://h5 ...
- tsql语句分析工具 转
一款好用且免费的语句分析工具 在调优过程中的查询语句优化阶段,分析语句的执行计划是必经之路,一款好的执行计划分析工具确实可以帮助我们事半功倍 一款名为“Plan Explorer“,自己用的挺爽,不私 ...
- Linux 常用命令集合
1. 常用命令 ls 显示当前目录下的文件和文件夹: -ltr 按时间顺序显示文件和文件夹的详细信息,不带参数的时候 只显示文件夹和文件. vi 打开文件的内容 tar -cvf file.tar ...
- VS2013 破解
密钥 : BWG7X-J98B3-W34RT-33B3R-JVYW9
- UIKit框架
在今后的应用程序构建中,会陆续使用各式各样的控件,因此UIKit框架的引入是必不可少的! 一.简介 UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口.应 ...
- 雅美尓(yaml)实战
献给跟我一样对yaml(雅美尓)有婶婶挫败感的同学! 开始第一个pylon工程,我们就跟yaml配置文件开始了不解之缘.yaml是什么?它有哪些规则? 大IBM的文章如是说:YAML 是一种比 XML ...
- innodb log file size 配置估算以及修改
root@localhost:(none) 06:22:17>pager grep seq PAGER set to 'grep seq' root@localhost:(none) 06:30 ...
- [转] 微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)
这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程.使用教程,需要的朋友可以参考下 最近公司新开发一个项目要用微软的TFS2 ...
- 前端面试题 之 JavaScript
昨天我们一起分享了关于html和css的面试题<前端面试题之Html和CSS>,今天我们来分享关于javascript有关的面试题.我面试的时候最害怕面试官问我js了,因为我真心不擅长这个 ...