java annotation processing 自动生成代码
2014-11-08 16:49
337 查看
package example; import java.io.*; import javax.tools.*; import java.util.*; import javax.annotation.processing.*; import javax.lang.model.*; import javax.lang.model.element.*; @SupportedAnnotationTypes(value = { "*" }) @SupportedSourceVersion(SourceVersion.RELEASE_6) public class ExampleProcessor extends AbstractProcessor { private Filer filer; public void init(ProcessingEnvironment env) { filer = env.getFiler(); } public boolean process(Set elements, RoundEnvironment env) { // Discover anything marked with @SuppressWarnings for (Element element : env .getElementsAnnotatedWith(SuppressWarnings.class)) { if (element.getKind() == ElementKind.METHOD) { // For any methods we find, create an aspect: String methodName = element.getSimpleName().toString(); String aspectText = "public aspect Advise_" + methodName + " {\n" + " before(): execution(* " + methodName + "(..)) {\n" + " System.out.println(\"" + methodName + " running\");\n" + " }\n" + "}\n"; try { JavaFileObject file = filer.createSourceFile("Advise_" + methodName, element); file.openWriter().append(aspectText).close(); System.out.println("Generated aspect to advise " + methodName); } catch (IOException ioe) { } } } return true; } }
相关文章推荐
- Java 中RGB颜色自动生成 十六进制 Java代码
- java代码自动生成
- java 代码自动生成getAndset
- java如何在eclipse编译时自动生成代码
- 分享:根据webservice WSDL地址自动生成java调用代码及JAR包
- [转]java版自动生成xml代码
- Hibernate自动生成Java代码似乎是个垃圾
- java 自动生成略缩图示例代码
- mybatis-generator自动生成java代码和配置文件的注意事项
- JAVA-----myeclipse快捷操作:一段代码自动生成方法 refactor重构extract method抽取方法
- 验证码自动生成代码 java
- Lombok — Java代码自动生成 开发利器
- 利用Velocity自动生成自定义代码_java版_源码下载
- JAVA-----myeclipse快捷操作:一段代码自动生成方法 refactor重构extract method抽取方法
- Java Web开发中可否自动生成结构一致的代码?
- java代码自动生成
- Lombok — Java代码自动生成 开发利器
- 自己写的一个代码自动生成工具_java版_源码下载
- 分享:根据webservice WSDL地址自动生成java调用代码及JAR包
- java中自动生成注册码的代码