- 浏览: 326772 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (140)
- oracle (2)
- j2se (18)
- 应用服务器 (2)
- 操作系统 (21)
- j2ee (3)
- web (9)
- Junit (0)
- 项目 (0)
- IDE (0)
- 五花八门 (1)
- excel导入导出 (0)
- DWR (0)
- display标签总结 (0)
- JS (7)
- FCKeditor (0)
- Spring (3)
- webservice (1)
- JVM (14)
- 传输协议 (6)
- maven (3)
- 服务器 (2)
- 数据结构 (11)
- HTTPClient (2)
- JQUERY (9)
- 设计模式 (4)
- 数据库 (6)
- 看书笔记 (0)
- 工具 (4)
- MINA (3)
- mysql (5)
- jetty (1)
- JAVA网络编程 (7)
- Hessian (1)
- ibatis (1)
- socket (4)
- Native (1)
- http (2)
- nosql (2)
- linux (1)
- hadoop (1)
最新评论
-
applezjv:
可以...
maven常见问题 -
andyboy_bin:
p
Jetty -
ye_wx:
...
TableSpace -
ye_wx:
TableSpace -
极限_裁决:
引用第二:不要把“好像”;“有人会……”;“大概”;“晚些时候 ...
可以让你少奋斗10年的工作经验
自定义Annotation
早就知道jdk5加了新特性Annotation,但是没研究过,前几天公司培训,有一部分是介绍jdk5新特性的,一个是注解一个泛型
今儿复习一下注解
//用@Deprecated声明该方法不建议使用
@Deprecated public void doSomething1(){
Map map = new HashMap();
map.put("some", "thing");
System.out.println(map);
}
//用@SuppressWarnings声明不再进行类型检查
@SuppressWarnings(value={"unchecked"})
public void doSomething2(){
Map map = new HashMap();
map.put("some", "thing");
}
写一个自定义注解先
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
//要在运行时使用这个注解,必须声明成RUNTIME
Annotation分为三种级别:RUNTIME、CLASS、SOURCE
@Retention(RetentionPolicy.RUNTIME)
public @interface SomeAnnotation{
String value();
String name();
}
下面来使用这个自定义注解:
import java.lang.reflect.Method;
public class AnnotationTest {
@SomeAnnotation(value="value1",name="name1")
public void doSomething3(){
}
public static void main(String[] args){
Class<AnnotationTest> c = AnnotationTest.class;
try {
//利用反射得到方法doSomething3
Method method = c.getMethod("doSomething3");
//查找doSomething3方法是否有SomeAnnotation的Annotation
if(method.isAnnotationPresent(SomeAnnotation.class)){
System.out.println("找到SomeAnnotation");
//得到SomeAnnotation
SomeAnnotation annotation = method.getAnnotation(SomeAnnotation.class);
System.out.println("annotation.value="+annotation.value());
System.out.println("annotation.name="+annotation.name());
}else{
System.out.println("没有找到omeAnnotation");
}
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
}
输出结果:
找到SomeAnnotation
annotation.value=value1
annotation.name=name1
发表评论
-
java枚举Enum
2013-01-14 14:43 1177public class TestEnum { /* ... -
Java 动态代理机制分析及扩展,第 1 部分
2012-03-26 12:47 747引言 Java 动态代理机制的出现,使得 Java 开 ... -
详解reflect Java的反射机制
2012-03-23 13:09 991一、类型识别的两种方式: 首先了解一下“运 ... -
Annotation 之 jdk1.5内建的Annotation实例
2011-11-15 20:25 851一、限定Override父类方法@Override ja ... -
Java Annotation
2011-11-14 22:04 0Java Annotation手册 ... -
集合类源码
2011-11-06 04:04 979主要包括Java类库中提供的几个具体的类: LinkedLis ... -
ArrayList和Vector以及HashTable和HashMap区别
2011-10-12 10:40 975ArrayList和Vector以及HashTable和Has ... -
JVM优化配置
2011-08-20 22:32 807JVM 优化配置 ... -
JVM慢慢琢磨
2011-08-20 22:05 898原文:http://www.iteye.com/ ... -
堆栈区别
2011-08-18 22:23 829原文:http://www.iteye.com/topi ... -
JVM闲谈
2011-08-18 22:01 757java中内存分为堆内存和栈内存。 Java把内存划分成两 ... -
堆和栈的区别
2011-08-03 00:27 824堆和栈的区别 一、预备知识—程序的内存分配 一个由 ... -
JVM 四
2011-08-02 18:22 755转自:http://blog.csdn.net/cute ... -
JVM
2011-08-02 18:20 164本文转自:http://blog.csdn.net/cu ... -
关于byte
2011-08-02 18:16 9841GB=1024MB=1024*1024KB=1024*102 ... -
jvm垃圾回收
2011-07-31 23:13 714Java里的对象并非总是被 ... -
String与StringBuffer的区别
2011-06-22 14:37 408String和StringBuffer的区别,网上资料可以说是 ... -
序列化
2009-10-11 22:13 1731序列化 (serialization) 将对象的状 ... -
去字符串中的回车 换行 空格的方法
2009-10-09 17:37 0import java.util.List; import ... -
去字符串中的回车 换行 空格的方法
2009-10-09 17:37 0import java.util.List; import ...
相关推荐
自定义Annotation的例子,博客地址:http://blog.csdn.net/yirentianran/article/details/52816764
NULL 博文链接:https://jeremy102.iteye.com/blog/1743919
使用annotationProcessor插件在编译期创建Java文件 使用在idea中 可以尝试下
一个非常简单的自定义Annotation注解demo,方便新手学习
Spring Boot+Redis+拦截器+自定义Annotation如何实现接口自动幂等.docx
JPA、EJB、Spring零配置等等怎么使用相信各位读者都能掌握,这里主要是说如何自定义自己的注解,自己使用自定义的注解。
本篇文章给大家介绍了使用springboot和拦截器、redis来优雅的实现接口幂等,对于幂等在实际的开发过程中是十分重要的,因为一个接口可能会被无数的客户端调用,如何保证其不影响后台的业务处理,如何保证其只影响...
Annotation自定义地图上的Annotation,在Annotation上加入图片。
@Target:用于描述注解的使用范围,如果自定义注解不存在@Target,则表示该注解可以使用在任何程序元素之上。接收参数ElementType,其值如下: /**接口、类、枚举、注解**/ ElementType.TYPE /**字段、枚举的常量**/...
自定义注解annotation及用法
自定义Result,自定义Annotation的实例
初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation生成javabean映射xml文件)还需要进一步的研究和探讨。涉及到深入annotation的内容,作者将在后文...
本文全面讲述了Java注解Annotation与Java自定义注解及相关内容,大家可以认真看看
Java基础复习笔记12Java自定义注解Annotation的使用
针对java 初学者或者annotation 初次使用者全面地说明了annotation 的使用方法、定义 方式、分类。...annotation 应用(例如使用自定义annotation 生成javabean 映射xml 文件)还需要进一步的 研究和探讨
本文针对java初学者或者annotation初次使用...初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation生成javabean映射xml文件)还需要进一步的研究和探讨。
自定义地图标注MKAnnotationView。在地图Annotation上加图片,自定义Annotation的文字字体以及颜色、大小等。 小编注:感谢开发者@小子Y个 编译测试,适用环境:Xcode 4.5, iOS 4.0 以上。
spring中自定义注解(annotation)与AOP中获取注解.通过实例演示自定义注解。
6.6 编写自定义Annotation 6.7 本章小结 第7章 闲言碎语 7.1 动机 7.2 TestNG哲学 7.3 关注和提供异常 7.4 有状态的测试 7.5 测试驱动开发的缺点 7.6 测试私有方法 7.7 测试与封装 7.8 调试器的威力 7.9 记日志的...