创建所需的自定义Java注释

时间:2014-08-27 12:02:30

标签: java annotations

假设我假设为查询编写字符串构建器:

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface SearchQuery {
}

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface Search {
}

所以@Search类有@SearchQuery个返回字符串的方法:

@Search
public class Queries extends Query{

    @SearchQuery
    public String queryEverything(){
        return "SELECT * FROM TABLE";
    }

}

主要问题:

一个。我是否可以制作一类注释@Search来强制至少存在@SearchQuery的一种方法?

其他问题:

B中。是否可以强制@SearchQuery的方法总是返回一个字符串?

℃。我将RetentionPolicy设置为Runtime,因为我想做一些反思,但仅限于测试:否则我的注释将为SOURCE。尽管没有生产目的,可以将它保持为RUNTIME吗?

我会对当前的设置进行任何改进,除了远离sql字符串之外,请分享其他任何内容,仅用于示例目的。

0 个答案:

没有答案