У нас есть библиотека кода Java, которую мы намерены использовать в разных проектах. Некоторые из этих проектов потребуют добавления аннотаций к объектам Java в этой библиотеке (т.е. в одном проекте эти объекты будут использоваться в реализации сервлета JAX-RS, поэтому их необходимо аннотировать с помощью аннотаций JAXB, JSON и т. Д.). У меня проблема в том, что я не мог понять, как добавить эти аннотации без изменения исходной библиотеки.
Рассмотрим этот пример:
public class MyClass
{
private String field1;
private int field2;
}
В некоторых проектах я хотел бы, чтобы класс вел себя так, как если бы он был
public class MyClass
{
@Annotation1
private String field1;
@Annotation2
private int field2;
}
Изначально я думал об использовании интерфейсов или производных классов, которые отдельно аннотированы, но не могли понять, как это сделать (или возможно это или нет). Я также узнал о предложении Javassist в этой теме (т. Е. Подход манипуляции с байт-кодом Java), но проблема в том, что это должно работать и на клиентах Android, поэтому это не вариант для меня. На данный момент у меня нет идей.
Буду признателен, если кто-нибудь сможет помочь. Может быть, я что-то упускаю, или, может быть, то, что я пытаюсь сделать, - это не правильный путь. В любом случае, чтобы продолжить, мне нужно какое-то руководство.
Заранее большое спасибо.