导航:首页 > 编程语言 > java获取类的注解

java获取类的注解

发布时间:2022-04-17 10:16:35

java 获取调用此方法的方法的注解

importjava.lang.annotation.Retention;
importjava.lang.annotation.RetentionPolicy;


@Retention(value=RetentionPolicy.RUNTIME)
public@interfaceMyAnnotation{
Stringname();

}

publicclassAnnonTestA{

publicvoidmethodA(){

}

@MyAnnotation(name="111")
publicvoidmethodA(Stringa)throwsException{
AnnonTestB.methodB("methodA",String.class);
}
}
importjava.lang.annotation.Annotation;
importjava.lang.reflect.Method;

publicclassAnnonTestB{

publicstaticvoidmethodB(StringmethodName,Class<?>...parameterTypes)throwsException{
AnnonTestAannonTestA=newAnnonTestA();
//获取AnnotationTest2的Class实例
Class<AnnonTestA>c=AnnonTestA.class;
//获取需要处理的方法Method实例
Methodmethod=c.getMethod(methodName,parameterTypes);
Method[]methods=c.getMethods();
//判断该方法是否包含MyAnnotation注解
if(method.isAnnotationPresent(MyAnnotation.class)){
//获取该方法的MyAnnotation注解实例
MyAnnotationmyAnnotation=method
.getAnnotation(MyAnnotation.class);
//执行该方法
// method.invoke(annonTestA,"12345");
//获取myAnnotation
Stringvalue1=myAnnotation.name();
System.out.println(value1);
}
//获取方法上的所有注解
Annotation[]annotations=method.getAnnotations();
for(Annotationannotation:annotations){
System.out.println(annotation);
}
}
}
importjava.io.*;
importjava.lang.annotation.Annotation;
importjava.lang.reflect.Method;

publicclassTestString{
publicstaticvoidmain(String[]args)throwsException{
AnnonTestAannonTestA=newAnnonTestA();
annonTestA.methodA("123");
}
}

代码都给上了,不明白再追问吧。

参考地址:http://blog.csdn.net/bao19901210/article/details/17201173

Ⅱ 各位大神,求救!!!java 如何获取该类上字段的注解,看图片

我知道
1.先获取这个类的class
Class<?> objclass=t.getClass();

2. 获取这个类的字段属性
Field[] at = objclass.getDeclaredFields();

3.遍历所有字段
for (Field fd : at) {
//比如获取这个字段上是否包含NotNull
if (fd.isAnnotationPresent(NotNull.class)) {
//这样就获取到这个注解属性了
NotNull d = fd.getAnnotation(NotNull.class);
}
}
4.要获取一个注解,你要先获取他所在的字段
希望对你有帮助!

Ⅲ java反射机制 怎样获取到类上面的注解

//定义注解并指定java注解保留策略为运行时RUNTIME,运行时注入到JAVA字节码文件里
//这样才可以在运行时反射并获取它。
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
@interfaceMyAnnotation{
Stringkey()default"";
intvalue()default0;
}

//使用注解
@MyAnnotation(key="key1",value=200)
classMyClass{}

//反射注解
publicstaticvoidmain(String[]args){
MyClassmyClass=newMyClass();
MyAnnotationannotation=myClass.getClass().getAnnotation(MyAnnotation.class);
System.out.println("key="+annotation.key()+" value="+annotation.value());
}

Ⅳ Java 注解的读取注解信息的方法

属于重点,在系统中用到注解权限时非常有用,可以精确控制权限的粒度
注意:要想使用反射去读取注解,必须将Retention的值选为Runtime Java代码importjava.lang.annotation.Annotation;importjava.lang.reflect.Method;//读取注解信息{publicstaticvoidmain(String[]args)throwsException{//测试AnnotationTest类,得到此类的类对象Classc=Class.forName(com.iwtxokhtd.annotation.AnnotationTest);//获取该类所有声明的方法Method[]methods=c.getDeclaredMethods();//声明注解集合Annotation[]annotations;//遍历所有的方法得到各方法上面的注解信息for(Methodmethod:methods){//获取每个方法上面所声明的所有注解信息annotations=method.getDeclaredAnnotations();//再遍历所有的注解,打印其基本信息System.out.println(method.getName());for(Annotationan:annotations){System.out.println(方法名为:+method.getName()+其上面的注解为:+an.annotationType().getSimpleName());Method[]meths=an.annotationType().getDeclaredMethods();//遍历每个注解的所有变量for(Methodmeth:meths){System.out.println(注解的变量名为:+meth.getName());}}}}}

Ⅳ 如何获取java代码中的注释

以前itjob老师讲过,使用eclipse生成文档(javadoc)主要有三种方法:
1,在项目列表中按右键,选择Export(导出),然后在Export(导出)对话框中选择java下的javadoc,提交到下一步。
在Javadoc Generation对话框中有两个地方要注意的:
javadoc command:应该选择jdk的bin/javadoc.exe
destination:为生成文档的保存路径,可自由选择。
按finish(完成)提交即可开始生成文档。
2,用菜单选择:File->Export(文件->导出),
剩下的步骤和第一种方法是一样的。
3,选中要生成文档的项目,然后用菜单选择,
Project->Generate Javadoc直接进入Javadoc Generation对话框,剩余的步骤就和第一种方法在Javadoc Generation对话框开始是一样的。

Ⅵ java 获取所有带注解的类

既然是基于spring,可以这样:
ResourcePatternResolver rpr = new ();

Resource[] res = rpr.getResources("classpath*: **/*.class"); // classpath*:带*号会找jar中的class
然后根据resource取clas路径就行
String className = res[0].getURL().getPath();
className = className.split("(classes/)|(!/)")[1];
className = className.replace("/", ".").replace(".class", "");
Object obj = Class.forName(className);

话说我最近也在写一个这样的MVC。。要不咱两合伙? 我写的也是基于注解,不过要支持REST风格

Ⅶ java如何获取类上的注解

如何获取类的注解和注解的内容

java反射

ClasssomeClass=Some.getClass();
注解somtAnnotation=someClass.getAnnotation(注解.class)
属性类型属性值=someAnnotation.属性();

要一一遍历么?

这个要根据需求来顶,谁用谁遍历,

Ⅷ java 如何获取方法的注释

通过JAVA的反射技术实现


一、需要定义元注释

Ⅸ 如何用java 程序获取方法上的注释

你说的应该是注解吧,注释本身就是一种说明性的作用,JAVA文件在被编译到CLASS文件后是不存在注释的,注解不一样,可以通过反射获取,但是JAVA文件被编译后,注解也不一定存在,这个取决于你所定义注解的生命周期。

Ⅹ java获取当前类上的注解内容

@Retention(RetentionPolicy.RUNTIME) // 注解会在class字节码文件中存在,在运行时可以通过反射获取到
@Target({ElementType.FIELD,ElementType.METHOD})//定义注解的作用目标**作用范围字段、枚举的常量/方法
@Documented//说明该注解将被包含在javadoc中
public @interface FieldMeta {

/**
* 是否为序列号
* @return
*/
boolean id() default false;
/**
* 字段名称
* @return
*/
String name() default "";
/**
* 是否可编辑
* @return
*/
boolean editable() default true;
/**

阅读全文

与java获取类的注解相关的资料

热点内容
dns使用加密措施吗 浏览:172
php独立运行 浏览:530
手机sh执行命令 浏览:727
云服务器的角色 浏览:733
单片机频率比例 浏览:840
我的世界服务器如何关闭正版验证 浏览:504
如何查roid服务器上的 浏览:130
安卓手机主板如何撬芯片不掉电 浏览:249
php各个框架的优缺点 浏览:101
php1100生成数组 浏览:359
以后做平面设计好还是程序员好 浏览:552
云服务器应用管理 浏览:438
饥荒云服务器搭建过程 浏览:186
可编程控制器优点 浏览:99
压缩垃圾车说明书 浏览:28
五轮书pdf 浏览:802
单片机定时流水中断系统流水灯 浏览:701
u8如何连接服务器配置 浏览:68
动力在于缓解压力 浏览:867
报考科一用什么app 浏览:346