当前位置:首页 » 编程语言 » java获取注解

java获取注解

发布时间: 2023-09-09 06:52:08

‘壹’ 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(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 获取所有带注解的类

既然是基于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中程序如何得到@Id这样的注释

java注解类public @Interface Id{}

import该类然后在方法,其他类,或者变量前就可以使用@Id注解了

热点内容
我的世界电脑版新的服务器 发布:2025-03-12 01:00:27 浏览:377
网站数据库设置 发布:2025-03-12 00:52:13 浏览:309
安卓是哪个企业 发布:2025-03-12 00:41:23 浏览:90
javascript还是php 发布:2025-03-12 00:41:12 浏览:696
微博抽奖算法 发布:2025-03-12 00:41:10 浏览:111
抖音的麦克风在哪里打开安卓版 发布:2025-03-12 00:35:15 浏览:121
压缩碳滤芯 发布:2025-03-12 00:21:11 浏览:417
php两个数组并集 发布:2025-03-12 00:15:00 浏览:338
复印店源码 发布:2025-03-11 23:56:48 浏览:953
彩运营源码 发布:2025-03-11 23:56:44 浏览:196