Я хотел бы знать, как лучше всего расширить существующую функциональность (возможно, с помощью AOP или аннотаций).Сценарий, который я ищу:
У нас есть одна служба, скажем, DisableEmployee, которая использует сущность Employee, которая выполняет некоторую проверку и затем отключает доступ к работнику.Для некоторых клиентов я хотел бы расширить эту функциональность, где DisableEmployee не только отключает доступ, но также налагает некоторые штрафные очки.
Один из подходов состоит в том, чтобы расширить базовый класс, а затем добавить дополнительные функциональные возможности.
Возможно (или желательно) использовать здесь АОП и аннотации;где я аннотирую свой DisableEmployee, а затем во время компиляции я добавляю дополнительный код в класс.(используя аспект) Я прочитал о APT и Velocity, которые должны помочь мне в его достижении.Причина, по которой я смотрю на APT, заключается в том, что нам, возможно, придется расширить классы сущностей, чтобы добавить некоторые новые атрибуты.
Идея такого подхода состоит в том, чтобы увидеть, можем ли мы классифицировать расширение службы как форму перекрестногофункциональность резки (например, традиционная регистрация, аудит ....)
Заранее спасибо