ApiGatewayApplication.java
Bridget/payment-gateway-microservices/services/api-gateway/src/main/java/com/checkout/paymentgw/gateway/ApiGatewayApplication.java
package com.checkout.paymentgw.gateway;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* The single public entry point.
*
* <p>Responsibilities (configured in {@code application.yml}):
* <ul>
* <li>Routing: {@code POST /api/payments} → {@code payment-service}</li>
* <li>Routing: {@code GET /api/payments/{id}} → {@code payment-query-service}</li>
* <li>JWT validation (Spring Security resource server)</li>
* <li>Redis-backed rate limiting (per merchant + IP)</li>
* <li>Correlation-id injection</li>
* <li>CORS, request logging</li>
* </ul>
*
* <p><strong>Anti-pattern alert:</strong> the gateway must remain config-heavy and
* code-light. Business decisions belong inside services.
*/
@SpringBootApplication
public class ApiGatewayApplication {
public static void main(String[] args) {
SpringApplication.run(ApiGatewayApplication.class, args);
}
}
관련 글
PaymentGatewayApplication.java
PaymentGatewayApplication.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/PaymentGatewayApplication.java).
글 읽기 →ApplicationConfiguration.java
ApplicationConfiguration.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/configuration/ApplicationConfiguration.java).
글 읽기 →RequestResponseLogger.java
RequestResponseLogger.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/configuration/RequestResponseLogger.java).
글 읽기 →PaymentGatewayController.java
PaymentGatewayController.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/controller/PaymentGatewayController.java).
글 읽기 →PaymentStatus.java
PaymentStatus.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/enums/PaymentStatus.java).
글 읽기 →BankErrorException.java
BankErrorException.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/exception/BankErrorException.java).
글 읽기 →