1.创建一个自定义annotation
package plugintest; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * 自定义annotation * @author elfkingw * 2013-5-13下午11:09:02 * */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.FIELD) public @interface DataFiled { /** * 中文名称 * @return */ public String cName(); /** * 数据类型 * @return */ public String dataType(); /** * 是否容许为空 * @return */ public boolean isNull(); }
2.自定义annotation使用
package plugintest; /** * * @author elfkingw * 2013-5-13下午11:09:47 * */ public class UserVo { private String Id; @DataFiled(cName = "用户名", dataType = "String", isNull = false) private String userName; @DataFiled(cName = "密码", dataType = "String", isNull = false) private String password; public String getId() { return Id; } public void setId(String id) { Id = id; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
3.annotation 测试
package plugintest; import java.lang.reflect.Field; import java.lang.reflect.Method; public class AnnotationTest { public static void main(String[] args) { UserVo vo = new UserVo(); vo.setId("1"); vo.setPassword("123456"); vo.setUserName("elfkingw"); Class clazz = vo.getClass(); Field filed[] = clazz.getDeclaredFields(); try { for (int i = 0; i < filed.length; i++) { Field f = filed[i]; String fieldname = f.getName(); // 得到单个字段上的Annotation DataFiled dateFiled = f.getAnnotation(DataFiled.class); // 如果标识了Annotationd的话 if (dateFiled != null) { System.out.print(dateFiled.cName()+":"); StringBuffer getMethodName = new StringBuffer("get"); getMethodName.append(fieldname.substring(0, 1) .toUpperCase()); getMethodName.append(fieldname.substring(1)); Method getMethod = clazz.getMethod(getMethodName.toString()); System.out.println(getMethod.invoke(vo, null)); } } } catch (Exception e) { e.printStackTrace(); } } }
相关推荐
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。
赠送jar包:jakarta.annotation-api-1.3.5.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
赠送jar包:javax.annotation-api-1.2.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
struts2 annotation 注解的详细介绍及使用方法
主要介绍了java注解annotation使用方法,注解可以定义到方法上,类上,一个注解相当与一个类,就相当于实例了一个对象,加上了注解,就相当于加了一个标志
自定义注解annotation及用法
赠送jar包:javax.annotation-api-1.3.2.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
从某些方面看,annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。这些信息被存储在annotation的“name=value”结构对中。annotation类型是一种接口,能够通过...
本文针对java初学者或者annotation初次使用者全面地说明了annotation的使用方法、定义方式、分类。初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation...
赠送jar包:geronimo-annotation_1.0_spec-1.1.1.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,
Java Annotation的初学者的入门样例,让读者更快的了解Annotation的用法和语法。
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。
Annotation的概念和作用 @Override注释的功能和用法 @Deprecated注释的功能和用法 @Suppress Warning注释的功能和用法 自定义注释 提取注释信息
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。
本文档主要讲述的是Java-Annotation使用大全;Annotation 提供了一条与程序元素关联任何信息...从某些方面看,annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。
针对java 初学者或者annotation 初次使用者全面地说明了annotation 的使用方法、定义 方式、分类。初学者可以通过以上的说明制作简单的annotation 程序,但是对于一些高级的 annotation 应用(例如使用自定义...
# 使用方法: 解压 【***.jar中文文档.zip】,再解压其中的 【***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作...
从某些方面看,annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。这些信息被存储在annotation的“name=value”结构对中。annotation类型是一种接口,能够通过...
本文针对java初学者或者annotation初次使用者全面地 说明了annotation 的使用方法、定义方式、分类。初学者可以通过以上的说明制作简单的 annotation程序,但是对于一些高级的 annotation应用