注解和反射14.获取注解信息

简介: 注解和反射14.获取注解信息
public class Test {
    public static void main(String[] args) throws ClassNotFoundException, NoSuchFieldException {
        Class c1 = Class.forName("lesson02.Test");
        //ton过反射获得注解
        Annotation[] annotations = c1.getAnnotations();
        for (Annotation annotation : annotations) {
            System.out.println(annotation);
        }
        //获得value值
        Tablezang tablezang = (Tablezang) c1.getAnnotation(Tablezang.class);
        String value=tablezang.value();
        System.out.println(value);
        Field name = c1.getDeclaredField("name");
        Fieldzang annotation = name.getAnnotation(Fieldzang.class);
    }
}
@Tablezang("db-students")
class Student{
    @Fieldzang(lm="db-id",lx="int",length = 10)
    private int id;
    @Fieldzang(lm="db-age",lx="int",length = 10)
    private int age;
    @Fieldzang(lm="db-name",lx="varchar",length = 10)
    private String name;
    public Student(int id, int age, String name) {
        this.id = id;
        this.age = age;
        this.name = name;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Student() {
    }
    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", age=" + age +
                ", name='" + name + '\'' +
                '}';
    }
}
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@interface Tablezang{
    String value();
}
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@interface  Fieldzang{
    String lm();
    String lx();
    int length();
}
相关文章
|
3月前
|
Java 程序员 API
注解和反射
这篇文章详细介绍了Java注解的概念、作用、内置注解、元注解、自定义注解,
注解和反射
|
4月前
|
Java 程序员 编译器
注解和反射(一)
注解和反射
31 0
|
4月前
|
Java 编译器
注解和反射(二)
注解和反射
24 0
怎么看注解对应的处理类?
怎么看注解对应的处理类?
68 0
|
Java
66.【注解与反射】(三)
66.【注解与反射】
42 0
|
Oracle Java 关系型数据库
反射与自定义注解
反射与自定义注解
反射与自定义注解
|
Java 数据库连接 编译器
Java注解详解,自定义注解,利用反射解析注解
概要 这篇文章将会带领你了解Java注解,注解的使用,注解的解析,利用反射解析运行时注解,相信有一定Java基础的小伙伴一定会接触大量的注解,Spring , Hibernate , MyBatis等著名的框架也有很多关于注解方面的应用,对于注解的使用...
2625 0