在Java中我可以做以下事情:
String table = Foo.class.getAnnotation(Table.class).name();
如何在Scala中存档?甚至Java中定义的注释似乎也没有那些“name()”方法......
答案 0 :(得分:3)
这应该可以解决问题:
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 {
}