通过反射获取类和字段对应的注解名称

阅读更多

1、获取类对应的注解

//加载类子界面文件,生成类对象
Class objClass = Class.forName("com.jsx.ormlitetest.model.Student");
		
//DatabaseTable是对应的注解类,负责注解对应的表名称。
DatabaseTable dt2 = (DatabaseTable)objClass.getAnnotation(DatabaseTable.class);
		
//DatabaseTable有方法tableName()表示表名称,也就是注解值
Log.i("ormlitetest", "DatabaseTable="+dt2.tableName());

 

2、获取字段对应的注解

//获取该类下面所有的字段
Field[] fields = objClass.getDeclaredFields();
		
//遍历所有字段
for (Field field : fields) {
	//如果存在该注解
	if(field.isAnnotationPresent(DatabaseField.class)){
		DatabaseField dt = field.getAnnotation(DatabaseField.class);
		System.out.println("DatabaseField="+dt.columnName());
	}			
}

 

你可能感兴趣的:(Annotation,类注解,字段注解,DatabaseTable,DatabaseField)