DI vs 서비스 로케이터 차이 #shorts #SAP #ABAP
1. 개요 및 이 글의 목표 ABAP 객체지향 설계에서 클래스 간 결합도를 낮추는 두 가지 대표적인 기법이 의존성 주입(Dependency Injection, DI) 과 서비스 로케이터(Service Locator) 패턴입니다. 두 기법 모두 "객체가 자신이 필요로 하는 의존 객체를 직
1. 개요 및 이 글의 목표 ABAP 객체지향 설계에서 클래스 간 결합도를 낮추는 두 가지 대표적인 기법이 의존성 주입(Dependency Injection, DI) 과 서비스 로케이터(Service Locator) 패턴입니다. 두 기법 모두 "객체가 자신이 필요로 하는 의존 객체를 직
개요 및 이 글에서 다루는 내용 CAP for Java(SAP Cloud Application Programming Model for Java)는 기본적으로 모든 비즈니스 로직을 트랜잭션 컨텍스트 안에서 실행합니다. 문제는 단순히 상품 카탈로그를 조회하거나 주문 내역을 검색하는 읽기 전
PersistenceService란 무엇인가 PersistenceService 는 CAP for Java 런타임이 제공하는 영속성 추상화 계층입니다. 패키지 com.sap.cds.services.persistence.PersistenceService 에 정의되어 있으며, CDS 엔터티
왜 CAP 아키텍트 면접은 코드 한 줄로 합격이 갈릴까? SAP BTP 프로젝트가 늘어나면서 CAP(Cloud Application Programming Model) 아키텍트 포지션의 채용도 활발해졌습니다. 그런데 막상 면접장에 들어가 보면 "CDS 엔티티 어떻게 정의하나요" 같은 표면
에러 처리, 매번 따로 짜고 있진 않나요? CAP for Java 프로젝트가 커지면, 서비스마다 try-catch 반복하게 됩니다. Global Exception Handler 로 한 곳에서 처리하면 코드도 줄고, 클라이언트 응답도 일관됩니다. 핵심 구조 Spring의 @Controll
이 글이 답하는 질문 CAP for Java에서 역할(Role) 기반 접근 제어를 어떻게 선언하나요? @AuthorizedRole과 @PreAuthorize 중 어떤 걸 써야 하나요? 로컬에서 권한 테스트는 어떻게 하나요? 직접 해보기 1. CDS에서 Role 선언 CDS 서비스 정의에
이 글이 답하는 질문 CAP for Java에서 Custom Action을 어떻게 정의하나? Java Handler를 @On으로 연결하는 정확한 방법은? Action 구현 시 자주 하는 실수는? 직접 해보기 1. service.cds에 Action 정의 // srv/my-service.
이 글이 답하는 질문 CAP Java 앱에 Health Check가 없으면 어떤 일이 생기나? Cloud Foundry / Kyma에서 Health Check는 어떻게 설정하나? Actuator와 커스텀 Health Indicator는 어떻게 추가하나? Health Check란 플랫폼(
인증 빼먹으면 API가 그대로 노출됩니다 CAP for Java 앱을 BTP에 배포할 때 XSUAA 바인딩과 JWT 검증을 누락하면, 인증 없는 엔드포인트가 외부에 그대로 노출될 수 있습니다. 특히 @cds.requires: 'authenticated-user' 선언을 빠뜨리면 Serv
이 글이 답하는 질문 CAP for Java에서 주기적인 배치 작업을 어떻게 구현하나요? @Scheduled 어노테이션 하나로 cron을 직접 구현하지 않아도 되나요? Spring의 @Scheduled을 CAP 서비스에서 바로 쓸 수 있나요? 직접 해보기 1. 의존성 확인 — Sprin
이 글이 답하는 질문 CAP Java에서 무거운 작업을 비동기로 처리하려면? @Async 를 붙이기만 하면 되는가? 비동기 메서드가 작동하지 않는 이유는 무엇인가? @Async란 Spring Boot에서 메서드에 @Async 를 붙이면 해당 메서드가 별도 스레드에서 실행된다. 이메일 발
BTP에서 Buildpack이란? SAP BTP Cloud Foundry 환경에서 앱을 배포할 때, Buildpack은 실행 환경을 자동으로 구성해 주는 도구입니다. 코드만 push하면 Buildpack이 런타임·의존성을 알아서 설치하고 앱을 기동합니다. 별도 Dockerfile 없이도
@Value란? CAP for Java는 Spring Boot 기반이므로 @Value 어노테이션을 그대로 사용할 수 있습니다. application.yaml 에 정의된 설정값을 Java 필드 한 줄로 바로 주입합니다. 설정 파일 작성 # application.yaml myapp: end
TL;DR CAP for Java 프로젝트에서 Jacoco를 설정하면 테스트 커버리지를 자동으로 측정하고, 기준 미달 시 빌드를 실패시킬 수 있습니다. 이 글이 답하는 질문 CAP Java에서 코드 커버리지를 어떻게 측정하나? Jacoco 플러그인 설정은 어떻게 하나? 커버리지 목표(6

@Component + implements EventHandler 두 마커의 조합으로 CAP Java 런타임이 Spring 컴포넌트 스캔에서 핸들러를 자동 발견하는 메커니즘, @ServiceName/@Before/@On/@After 라우팅 테이블 구축 원리, @HandlerOrder 실

SAP BTP Cloud Foundry에서 cf push 후 앱이 Crashed 되는 5가지 주요 원인(메모리 초과, 바인딩 오류, 포트 충돌, 환경변수 누락, buildpack 문제)과 즉시 적용 가능한 해결법을 Q&A 형식으로 정리합니다.

CAP Java의 CDS Query API(CQN)를 완전 정복합니다. Select.from() Dynamic/Static 스타일 비교, where()/matching()/byId() 필터 선택 가이드, run() 실행과 listOf() 타입 안전 결과 처리, 배치 실행 및 Optimi

SAP BTP XSUAA의 xs-security.json 구조, OAuth2 Grant Type 비교, 역할 컬렉션 설정, Spring Boot/CAP 연동까지 실무 중심으로 다룹니다.

CAP for Java에서 OData Actions와 Functions를 구현하는 방법을 완전히 정복합니다. CDS 모델에서 Unbound/Bound 선언, Maven Plugin의 타입 안전 EventContext 자동 생성, cancelOrder·addRating 실전 예제까지 단계
딥시크가 차세대 모델 V4를 출시하며 저비용 고성능 AI 경쟁을 재점화했고, 앤트로픽의 클로드 미토스는 글로벌 금융 당국의 우려를 받고 있습니다.