Я хочу захватить данные, возвращаемые методом, внутри метода, по которому я хочу дать совет. Я хочу использовать @After, потому что этот метод может генерировать исключения, и я хочу захватывать эти данные независимо от того, является ли «родительский» метод успешным или завершается с ошибкой и завершается с исключением.
Я пробовал различные реализации pointcuts, но не знаю, как настроить подпись аннотации @After. Документация Spring/другие примеры, которые я прочитал, не имеют «расширенного» примера, подобного тому, о котором я прошу. Они более «базовые».
В ОСНОВНОМ это: AspectJ: перехват возвращаемого результата метода внутри другого метода
Но с @After, а не с @После возвращения. @After не поддерживает те же параметры, что и @AfterReturning.
Любые примеры были бы фантастическими, спасибо.
Код класса приложения:< /strong>
package mycode.application;
import class.from.external.jar.ExternalClass;
public class MyClass{
@Autowired
ExternalClass ec;
public ResponseObj method1(RequestObj reqObj) throws Exception {
Object obj;
ResponseObj retObj;
// some code
obj = ec.someMethod(reqObj);
// some code
try{}catch(Exception e{};
return retObj;
}
}
Код класса аспекта:
package mycode.aspect;
import java.util.List;
import * (all the stuff we need to import)
@Aspect
public class MyAspect {
@After("execution (* mycode.application.MyClass(..)")
public void afterMethod1(JoinPoint joinPoint) {
//the execution signature works great to get in here, but I can only get
// args/return object from the joinPoint.
//I want to use the data from obj returned from called method inside method1
//obj = ec.someMethod(..)
);
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... fter-advic
Получение внутренних методов приводит к переменным данным с использованием Spring Boot Aspect @After Advice ⇐ JAVA
Программисты JAVA общаются здесь
1729714694
Anonymous
Я хочу захватить данные, возвращаемые методом, внутри метода, по которому я хочу дать совет. Я хочу использовать @After, потому что этот метод может генерировать исключения, и я хочу захватывать эти данные независимо от того, является ли «родительский» метод успешным или завершается с ошибкой и завершается с исключением.
Я пробовал различные реализации pointcuts, но не знаю, как настроить подпись аннотации @After. Документация Spring/другие примеры, которые я прочитал, не имеют «расширенного» примера, подобного тому, о котором я прошу. Они более «базовые».
В ОСНОВНОМ это: AspectJ: перехват возвращаемого результата метода внутри другого метода
Но с @After, а не с @После возвращения. @After не поддерживает те же параметры, что и @AfterReturning.
Любые примеры были бы фантастическими, спасибо.
[b]Код класса приложения:< /strong>
package mycode.application;
import class.from.external.jar.ExternalClass;
public class MyClass{
@Autowired
ExternalClass ec;
public ResponseObj method1(RequestObj reqObj) throws Exception {
Object obj;
ResponseObj retObj;
// some code
obj = ec.someMethod(reqObj);
// some code
try{}catch(Exception e{};
return retObj;
}
}
Код класса аспекта:[/b]
package mycode.aspect;
import java.util.List;
import * (all the stuff we need to import)
@Aspect
public class MyAspect {
@After("execution (* mycode.application.MyClass(..)")
public void afterMethod1(JoinPoint joinPoint) {
//the execution signature works great to get in here, but I can only get
// args/return object from the joinPoint.
//I want to use the data from obj returned from called method inside method1
//obj = ec.someMethod(..)
);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79119524/getting-inner-methods-result-variable-data-using-spring-boot-aspect-after-advic[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия