概述
package com.sunsheen.jfids.studio.composite.Test;
import java.util.List;
import com.sunsheen.jfids.studio.javaassist.ClassPool;
import com.sunsheen.jfids.studio.javaassist.CtClass;
import com.sunsheen.jfids.studio.javaassist.bytecode.AnnotationsAttribute;
import com.sunsheen.jfids.studio.javaassist.bytecode.ClassFile;
import com.sunsheen.jfids.studio.javaassist.bytecode.ConstPool;
import com.sunsheen.jfids.studio.javaassist.bytecode.annotation.Annotation;
public class Fanse {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ClassPool pool = new ClassPool();
CtClass claName = null;
try {
//
// 如果是jar文件路径
pool.appendClassPath("C:\Users\minner\Desktop\jfids_base.jar");
claName = pool.get("com.sunsheen.jfids.system.base.composite.data.page.java.PageDataServiceImpl");
ClassFile cf = claName.getClassFile();
ConstPool cp = cf.getConstPool();
AnnotationsAttribute attr = new AnnotationsAttribute(cp,AnnotationsAttribute.visibleTag);
Annotation a = new Annotation("Remotable", cp);
attr.addAnnotation(a);
claName.getClassFile().addAttribute(attr);
List b=claName.getClassFile().getAttributes();
for (Object object : b) {
System.out.println(b.toString());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
控制台输出:
[@Remotable]
最后
以上就是土豪汉堡为你收集整理的反射添加类注释的全部内容,希望文章能够帮你解决反射添加类注释所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复