在Java中,我可以做以下事情:
String table = Foo.class.getAnnotation(Table.class).name();
如何在 Scala 中存档?甚至在 Java 中定义的注解似乎也没有那些“name()”方法......
在Java中,我可以做以下事情:
String table = Foo.class.getAnnotation(Table.class).name();
如何在 Scala 中存档?甚至在 Java 中定义的注解似乎也没有那些“name()”方法......
这应该可以解决问题:
val table = classOf[Foo].getAnnotation(classOf[Table]).name()
如果你有这样的东西,那就行了:
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
@java.lang.annotation.Target({java.lang.annotation.ElementType.ANNOTATION_TYPE})
public @interface Table {
public String name();
}
这是应该存在于 Java 源文件中的注释定义。
和 Foo 类:
@Table(name="hello")
class Foo {
}