`

java annotation注释

    博客分类:
  • java
阅读更多

java annotation讲解 :http://danwind.iteye.com/blog/1140831/

 

java annotation实例:

 

package com.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD,ElementType.METHOD})
public @interface DataBaseBean
{
	public int i = 0;
	public String value() default "mysql";
}

 

利用java反射,和注释的测试用例

   class DataBase{

	@DataBaseBean
	private String name;
	@OracleAnnotation("oracle")
	private Object driver;
	private int length;
	@DataBaseBean
	public String getName(String j,String i, int ii,java.util.Date d)
	{
		return name;
	}
	public void setName(String name)
	{
		this.name = name;
	}
	public Object getDriver()
	{
		return driver;
	}
	public void setDriver(Object driver)
	{
		this.driver = driver;
	}
	public int getLength()
	{
		return length;
	}
	public void setLength(int length)
	{
		this.length = length;
	}
	
}
 

 

 

public class ReflectAnnotation
{
	public static void main(String[] args)
	{
		try
		{
			Class pojo = Class.forName("com.annotation.DataBase");
			Field[] filedList = pojo.getDeclaredFields();
			Method[] methodList = pojo.getDeclaredMethods();
			System.out.println("getClassEle----------------");
			for (int i = 0; i < filedList.length; i++)
			{
				Field file = filedList[i];
				System.out.println(Modifier.toString(file.getModifiers())+"    "+file.getType()+"    "+file.getName());
				Annotation[] annotations = file.getAnnotations();
				
				for (int j = 0; j < annotations.length; j++)
				{
					if(annotations[j].annotationType().equals(DataBaseBean.class))
					{
						DataBaseBean anno = (DataBaseBean)annotations[j];
						System.out.println("value值为"+anno.value());
					}
					else if(annotations[j].annotationType().equals(OracleAnnotation.class))
					{
						OracleAnnotation anno = (OracleAnnotation)annotations[j];
						System.out.println("value值为"+anno.value());
					}
					System.out.println("filed上的注释为"+annotations[j].annotationType());
				}
			}
			for (int i = 0; i < methodList.length; i++)
			{
				Method method = methodList[i];
				boolean MethodAnnotation = method.isAnnotationPresent(DataBaseBean.class);
			
				if(MethodAnnotation)
				{
					Class parameters[] = method.getParameterTypes();
				    System.out.print(Modifier.toString(method.getModifiers()) + " " + method.getReturnType() + " " + method.getName() + " (");
				    for(int k = 0;k < parameters.length;k++)
				    {
				     System.out.print("参数列表:"+parameters[k].toString());
				    }
				    DataBaseBean databaseBean = method.getAnnotation(DataBaseBean.class);
				    System.out.println(databaseBean.value());
				}
			}
		}
		catch (Exception e)
		{
			System.out.println("参数报错");
		}
	}
	
}
 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    java1.5 annotation注释源代码

    Java 1.5 引入了一种新的元编程机制——注解(Annotation),极大地增强了代码的可读性和可维护性。注解是一种在代码中添加元数据的方式,它允许程序员在源代码上添加一些信息,这些信息可以被编译器或运行时环境...

    Java Annotation

    ### Java Annotation 概述与应用 #### 一、Java Annotation 的定义及作用 Java Annotation(注解)是自 Java 5.0 开始引入的一种语言元素,它为开发者提供了在代码中添加元数据的能力。简单来说,注解就像是对代码...

    javaAnnotation.pdf

    Java Annotation 是一种在 J2SE 5.0 版本中引入的重要特性,它遵循JSR-175规范,允许程序员在代码中嵌入元数据。元数据是关于数据的数据,可以用来创建文档、追踪代码依赖关系以及执行编译时检查。在Java中,注释...

    重难点之JavaAnnotation手册.pdf

    在《Java Annotation入门》之后的这篇《重难点之JavaAnnotation手册》中,作者深入探讨了Annotation的概念、定义以及其在Java开发中的应用。 一、Annotation是什么? Annotation是一种在代码中添加的特殊注解,用于...

    eclipse配置Java代码注释模板

    eclipse配置Java代码注释模板,Window -&gt; Preferences -&gt; Java -&gt; Code Style -&gt; Code Templates,点击import导入注释模板,勾选Automatically add comments for new methods and types,选择Comments和Code中的注释...

    java-annotation-processor:JAVA注释处理器

    Java注释处理器(Annotation Processor)是Java平台提供的一种机制,用于在编译期间对源代码进行分析、修改或生成新的源代码。这个机制基于Java的注解(Annotation),注解是一种元数据,它提供了在代码中附加信息的...

    Java_Annotation详解

    ### Java_Annotation详解 #### 元数据的作用与分类 元数据在编程中扮演着至关重要的角色,尤其是在Java中,通过注解(Annotation)这一特性,元数据被广泛应用于多个方面,包括但不限于文档生成、代码分析以及编译...

    java Annotation 注解

    Java Annotation,也称为注解,是Java编程语言中的一种元数据机制,自JDK 5.0开始引入。注解提供了在源代码中嵌入元数据的能力,这些元数据可以被编译器、构建工具或者运行时环境用来处理代码。它们在代码中看起来...

    Java 注释编码

    Java 注释编码的知识点涵盖了Java注解(Annotations)的基本概念、语法、使用场景以及与Java SE 8的变化。注解是Java SE 5引入的一个特性,用于为Java代码提供元数据。这些元数据可以被编译器读取,也可以用于运行时...

    Java用注解的方式定义一个Servlet

     像上面的AnnotationServlet可以描述成@WebServlet(name="AnnotationServlet",value="/AnnotationServlet")。  也定义多个URL访问:  如@WebServlet(name="AnnotationServlet",urlPatterns={"/Annotation...

    JAVA中如何写注释ji

    JAVA注释的写法和重要性 Java 中的注释是提高代码可读性和维护性的重要手段。通过添加注释,可以使不同的创作者或者阅读者进行良好的阅读和理解代码的逻辑和意图。Java 中的注释有三种格式,即单行注释、多行注释和...

    Annotation注解的介绍和使用

    Annotation是Java平台提供的一种强大的元数据机制,它不仅简化了代码,还极大地增强了代码的表达力和灵活性。通过合理地使用和设计注解,开发者可以构建出更加清晰、易于维护和扩展的软件系统。

    jakarta.annotation-api-1.3.5-API文档-中文版.zip

    标签:annotation、api、jakarta、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...

    使用annotation获取实体类注释

    这篇博客“使用annotation获取实体类注释”主要探讨了如何利用注解来增强代码的可读性和可维护性,同时介绍了如何从实体类中获取已定义的注解信息。以下是关于这个主题的一些关键知识点: 1. **注解定义**:注解以`...

    史上最完整java注释教程

    Java注释是编程语言中的一种重要工具,用于提供元数据信息,这些信息可以在代码的生命周期中起到多种作用,包括但不限于帮助开发人员理解代码、辅助工具进行自动化处理以及提供运行时的元数据查询。在Java中,注释并...

    java-annotation-processor-client:Java注释处理器客户端

    Java注释处理器客户端是Java开发中的一个重要工具,它在编译期间通过读取源代码中的特定注解(Annotation)来生成或修改其他源代码、资源文件或者元数据。这个工具通常用于实现元编程,帮助开发者编写更加简洁且具有...

    eclipse注释模板以及使用方法

    - 在右侧的“Annotation Types”列表中,你可以看到预设的注释类型,如Java Doc、Line Comment等。点击“New...”按钮创建一个新的注释类型。 - 输入新注释类型的名称,例如“自定义Java注释”,并选择一个独特的...

    word源码java-annotation-parser:通用的注释解释器

    根据自己的了解,程序语言(重点是c++,java,javascript)的注释,一般分为两种。一种是由双斜杠(//)开头的单行注释,令外一种是由斜杠星号(/)开始和对应星号斜杠(/)结束的段落(多行)注释。在由注释生成文档...

Global site tag (gtag.js) - Google Analytics