| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- api gateway 설계
- api gateway 필터
- ApplicationEvent
- argocd
- assertThat
- async/await
- AVG
- AWS
- aws autoscaling
- aws eks
- aws iam role
- AWS KMS
- Today
- Total
목록Web/Spring (36)
기록
1. 문제 정의: 서비스 간 순환참조로 인해 스프링 부트 애플리케이션 실행 시 빈 초기화에서 순환 의존성 문제 발생. The dependencies of some of the beans in the application context form a cycle ┌─────┐ | challengeService defined in file ↑ ↓ | couponService defined in file └─────┘도메인 서비스 A와 B 간에 의존성이 존재하며, A는 B를 참조하고 B는 A를 참조하면서 순환참조 문제가 발생. 서비스 A는 ChallengeService를, 서비스 B는 CouponService를 참조하고 있음. 2. 고려사항 서비스 간 의존성 그래프를 분석하여 순환참조를 발생시키는 의존성 구조를 ..
시작하면서 Spring Boot, JPA, Kotlin, H2(개발용 DB)을 활용하여 Notice 테이블의 목록 조회와 삽입을 구현하고자 했다. 그런데 아이디를 어떤 방식으로 생성해야 하는지에 대한 고민이 있었다. 아래는 그 내용을 다룬 포스팅이다. 프로젝트 구성 (1) 공지사항 테이블 (Notice) (2) 데이터베이스 (3) 엔드 포인드 POST /notices 공지사항 생성 GET /notices 공지사항 목록 조회 기본 키 생성 전략(IDENTITY, SEQUENCE, TABLE) 데이터베이스에서 기본 키(Primary Key)를 생성하는 방식으로는 여러 가지 전략이 있다. 이중에는 IDENTITY, SEQUENCE, TABLE과 같이 자주 사용된다. 각 전략은 고유한 특징과 장단점을 가지고 있..
시작하면서 최근에 프로그래머스의 고양이 사진 검색 API 만들기 과제를 하면서, Feign API를 접하게 되었다. 이전에는 HttpConnection를 사용해 Http client를 작성했는데, Feign API는 인터페이스만 작성하면 기본적인 통신이 가능해서 훨씬 단순하다고 느꼈다. 이 글에서는 정말 간단하게 Feign API를 사용하는 방법에 대해서 이야기하고자 한다. 미리 준비할 것 아래에서는 고양이 사진 API를 사용할 것이므로, 미리 사용할 API와 API 응답에 맞는 Response 객체를 만들어둔다. HttpConnection 위 예제를 HttpConnection을 통해 구현하면, 외부 Api를 호출하고 jsonString을 Vo에 담는 과정까지 직접 구현해야 했다. public class..
프로젝트 생성 파일구조 build.gradle dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' annotationProcessor 'org.projectlombok:lombok' providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' testImplementation 'org.springframework.boot:spring-boot-starter-test' ..