java注解

package com.student;

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;

public class Demo {

public static void main(String[] args) throws NoSuchFieldException, SecurityException {
  try {
      //获得类的所有注解
    Class class1=Class.forName("com.student.SxtStudents");
    Annotation[] annotations=class1.getAnnotations();
    for (Annotation annotation : annotations) {
        System.out.println(annotation);
    }
    //获得类的指定的注解
    SxtTable se=(SxtTable)class1.getAnnotation(SxtTable.class);
    System.out.println(se.value());
    //获得类属性的注解
    Field sxtFild=class1.getDeclaredField("studentname");
    SxtFild sxtFild2=sxtFild.getAnnotation(SxtFild.class);
    System.out.println(sxtFild2.columnName()+"-----"+sxtFild2.type()+"----"+sxtFild2.lenth());
} catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

}

}
注解信息
package com.student;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(value= {ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface SxtTable {
String value();
}
package com.student;

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

@Target(value={ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface SxtFild {
String columnName();
String type();
int lenth();
}
对student做注解
package com.student;

@SxtTable(“tb_student”)
public class SxtStudents {

 @SxtFild(columnName="id",type="int",lenth=10)
 private int id;
 @SxtFild(columnName="studentname",type="varchar",lenth=10)
 private String studentname;
 @SxtFild(columnName="age",type="int",lenth=3)
 private int age;

public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getStudentname() {
    return studentname;
}
public void setStudentname(String studentname) {
    this.studentname = studentname;
}
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值