Некоторые компании, работающие с персональными данными пользователей, сталкиваются с невозможностью хранить их в течение долгого периода времени из-за правовых ограничений. Такое часто можно встретить в финтехах. Позволяется сохранить данные на очень короткое время, которые также должны быть удалены сразу после использования в целях сервиса. Существует несколько вариантов решения этой задачи. В данном посте я показываю упрощенный пример микросервиса, работающего с чувствительной информацией, используя Spring и Redis.
Рубрика «aspectj»
Пример использования Spring Data и Redis для временного хранения персональных данных
2024-11-11 в 7:15, admin, рубрики: aop, aspectj, java, redis, spring, spring boot, testcontainersВыборочное логирование трафика для сервисов SOAP
2019-06-19 в 10:27, admin, рубрики: aop, aspectj, java, soap, Spring-WS, Анализ и проектирование систем, Блог компании True Engineering, Разработка веб-сайтовПрактически в любом нашем проекте, который интегрируется с сервисами заказчика, используются SOAP-сервисы. И в каждом таком проекте есть задача логирования информации. Мы особенно заинтересованы в логировании запросов, которые связаны с бизнес-операциями решения. Например, сотрудник ввел неправильные данные и сервис вернул ошибку. Мы хотим знать детали этой ошибки и как можно быстрее её поправить или вынести на обсуждение с заказчиком.
Мы хотели бы видеть запросы нашего клиента и ответы сервиса в неизменном виде, поскольку это помогает разбирать возникающие проблемы.
В этой статье расскажем, как мы настроили выборочное логирование трафика для сервисов SOAP.
Теория и практика AOP. Как мы это делаем в Яндексе
2016-06-30 в 13:47, admin, рубрики: android development, aop, aspectj, java, Блог компании Яндекс, Программирование, Разработка под androidОдна из ключевых особенностей работы в Яндексе — это свобода выбора технологий. В Авто.ру, где я работаю, нам приходится поддерживать большой пласт исторических решений, поэтому любая новая технология или библиотека встречается двумя вопросами коллег:
— Насколько это увеличит дистрибутив?
— Как это поможет нам писать меньше и эффективнее?
Сейчас мы используем RxJava, Dagger 2, Retrolambda и AspectJ. И если о первых трёх технологиях слышал каждый разработчик, а многие даже применяют их у себя, то о четвёртой знают только хардкорные джависты, пишущие большие серверные проекты и разного рода энтерпрайзы.
Передо мной стояла цель ответить на эти два вопроса и обосновать использование AOP-методологии в Android-проекте. А это значит — написать код и показать наглядно, как аспектно-ориентированное программирование поможет нам ускорить и облегчить работу разработчиков. Но обо всём по порядку.
Аспектно-ориентированное программирование. Основы
2015-04-03 в 8:54, admin, рубрики: aop, aspectj, aspectj-scripting, java, open source, Программирование, разработка, сквозная функциональностьПродолжим тему, начатую в прошлой слесарно-программистской статье про AspectJ и open source расширение для этой библиотеки aspectj-scripting. В этой заметке рассмотрим какие задачи решает аспектно-ориентированное программирование (AOP) на примере и синтаксисе самой известной библиотеки среди адептов этой методологии. AspectJ — дитя Xerox PARC, теперь совершеннолетнее и живущее в Eclipse Foundation.
(фото из статьи на lurkmore про евроремонт)
Вероятно, статья не будет интересна тем кто часто использует в своей работе AOP и понимает что это такое. В комментариях приветствуются как конструктивные замечания так и веселый холивар!
Disclaimer: Я не теоретик, поэтому рассказанное в статье субъективно, пропущено через призму опыта.
Читать полностью »
Напильники бывают разные или повествование про «напильник» для java программ
2015-04-01 в 11:06, admin, рубрики: aop, aspectj, aspectj-scripting, java, maven, maven-changes-plugin, MVEL, repository, напильник, разработкаВ практике java программиста бывает, что очень хочется изменить поведение программы или «подхачить» пару классов без перепаковки приложения, собрать метрики или протестировать java приложение в недрах сторонней библиотеки или jdbc драйвера без исходного кода. Существует несколько способов сделать это. Я расскажу про open source проект aspectj-scripting, который позволяет решать такие задачи в jvm.
Рассказ про aspectj-scripting будет в нескольких публикациях. Начнем с практики! Под катом модификация поведения maven-changes-plugin без его пересборки и перекомпиляции для выгрузки списка задач из JIRA в файлы xml и json
Читать полностью »
Аспектно ориентированное программирование в Android
2014-07-28 в 7:51, admin, рубрики: android, android studio, aspectj, gradle, Разработка под androidУслышав об аспектно ориентированном программировании я, как Android разработчик, сразу подумал, что на Android это вряд ли заработает, однако, решил попробовать. Я был очень удивлен, когда уже через 5 минут приложение, использующее AspectJ, успешно заработало на телефоне.
Не буду убеждать в необходимости использования аспектов в Android и приводить примеры «uses cases», просто приведу пример того, как добавить к своему приложению возможность использования аспектов. Что такое аспекты и для чего их использовать прекрасно описано, например, на wiki.
Читать полностью »
BDD наоборот
2012-08-31 в 9:03, admin, рубрики: agile, aspectj, bdd, cucumber, Блог компании Luxoft, тестирование, метки: agile, aspectj, bdd, cucumber, тестированиеЯ читал про BDD, и понял одну вещь: BDD это блаблабла блабла бла. Нету у него нормального определения. Вот, например, написано:
BDD совмещает в себе основные техники и практики TDD и идеи DDD для того чтобы предоставить программистам, тестерам, аналитикам и менеджерам общий процесс взаимодействия по ходу разработки ПО.
Все понятно? Мне — ничего. Поэтому я расскажу, что мы делаем и зачем, из того, что может иметь отношение к BDD.
Читать полностью »
Разработка / Применение AOP для отладки чужой библиотеки
2012-02-23 в 14:05, admin, рубрики: aop, aspectj, debug, отладка, трассировка, метки: aop, aspectj, debug, отладка, трассировкаНа Хабре уже поднималась тема аспектно-ориентированного программирования (Aspect-oriented programming, AOP). Этой парадигме уже не так мало лет, но ее использование отнюдь не повсеместно. В комментариях регулярно обсуждается, а нужна ли она вообще или для каких целей всё же выгодно ее использовать.
В этой статье я хочу описать один из примеров применения — реальную ситуацию, где AOP меня выручило. Притом, я просто не знаю приемлемого способа решения безЧитать полностью »