Объединить аннотации в Java - PullRequest
2 голосов
/ 09 августа 2010

Как я могу объединить аннотации в Java?

РЕДАКТИРОВАТЬ Я спрашивал, есть ли у меня две аннотации a и b, могу ли я объединить в одну аннотацию c? Если возможно, как мне это сделать?

Ответы [ 2 ]

6 голосов
/ 27 сентября 2010

Вы не можете объединить аннотации, например, аннотирование аннотаций, если только пользователь аннотации не обработает дерево метааннотации явно. Например, Spring поддерживает такую ​​функцию для @Transactional, @Component и некоторых других аннотаций (вы можете взглянуть на SpringTransactionAnnotationParser#parseTransactionAnnotation()). Приятно иметь эту функцию в ядре Java, но увы ...

Однако вы можете объявить общий родительский класс, который имеет необходимый набор аннотаций, и расширить его. Но это не всегда применимо.

2 голосов
/ 09 августа 2010

Предполагая, что вы хотите иметь несколько аннотаций на одном элементе, вы можете просто перечислить их в последовательности.

Страница Википедии о аннотациях Java содержит довольно много полезных примеров, например,

  @Entity                      // Declares this an entity bean
  @Table(name = "people")      // Maps the bean to SQL table "people"
  class Person implements Serializable {
     ...
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...