{"id":18936823,"url":"https://github.com/mcarneirobug/aspects-spring-aop","last_synced_at":"2026-05-14T20:33:39.587Z","repository":{"id":242781149,"uuid":"810546395","full_name":"mcarneirobug/aspects-spring-aop","owner":"mcarneirobug","description":"Spring AOP","archived":false,"fork":false,"pushed_at":"2024-06-04T22:59:59.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-31T19:40:01.445Z","etag":null,"topics":["aop-aspects","java","spring"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mcarneirobug.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-04T22:55:41.000Z","updated_at":"2024-06-04T23:00:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"adeeb5c3-d091-458b-9b31-1c03b265624f","html_url":"https://github.com/mcarneirobug/aspects-spring-aop","commit_stats":null,"previous_names":["mcarneirobug/aspects-spring-aop"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mcarneirobug/aspects-spring-aop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcarneirobug%2Faspects-spring-aop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcarneirobug%2Faspects-spring-aop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcarneirobug%2Faspects-spring-aop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcarneirobug%2Faspects-spring-aop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mcarneirobug","download_url":"https://codeload.github.com/mcarneirobug/aspects-spring-aop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcarneirobug%2Faspects-spring-aop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33042240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-14T02:00:06.663Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aop-aspects","java","spring"],"created_at":"2024-11-08T12:09:01.380Z","updated_at":"2026-05-14T20:33:39.572Z","avatar_url":"https://github.com/mcarneirobug.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Spring AOP\n\nSpring AOP (Aspect-Oriented Programming) provides a way to modularize cross-cutting concerns away from the objects that they affect. It is integrated seamlessly with the Spring Framework, enhancing modularity and allowing for cleaner separation of concerns, especially when dealing with repetitive code or boilerplate, such as transaction management, logging, or security.\n\nSpring AOP uses Aop proxies based on classic design patterns, supporting both method interception and pointcuts to cleanly inject behavior to your code at specified join points. This approach helps in keeping the code DRY (Don't Repeat Yourself) and promotes a clean separation of roles within the program.\n\n### Key features of Spring AOP include:\n- **Declarative Aspect Support**: Define aspects declaratively using simple Java annotations or XML configuration.\n- **Pointcut Abstraction**: Target specific join points in the application using expressive pointcut declarations.\n- **Advice Types**: Supports different types of advice like `@Before`, `@After`, `@AfterReturning`, `@AfterThrowing`, and `@Around`, providing a robust framework for aspect execution around method invocations.\n\nSpring AOP is proxy-based and is not as powerful as full AspectJ, but it integrates well with Spring applications providing a rich and flexible framework for handling cross-cutting concerns in a Spring-friendly manner.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcarneirobug%2Faspects-spring-aop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmcarneirobug%2Faspects-spring-aop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcarneirobug%2Faspects-spring-aop/lists"}