일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring
- 레이어드 아키텍처
- 톰 홀버그
- 백준
- 클린 아키텍처
- 스프링
- JPA
- vm
- chatGPT
- 로버트 C. 마틴
- 김영한
- 배치
- debezium
- API
- 개발
- boj
- K8S
- 자바
- OpenAI
- 엉클 밥
- MSA
- outbox
- 로버트마틴
- C++
- EDA
- PS
- 헥사고날 아키텍처
- Kafka
- 프로젝트
- CDC
- Today
- Total
목록Development/Spring (4)
코딩 해파리

언어: javaSpring Boot ver: 3.3.4IDE: intelliJSDK: JDK 21의존성 관리툴: GradleMac 안녕하세요!이번에 작성할 내용은 이미 개발한 스프링 부트 기반 프로젝트를어떻게 하면 간단하게 AWS사의 EC2, Google사의 VM인스턴스 등등의 가상머신에 띄울 수 있을지에 대한 방법입니다!분명 여러가지 방법이 있습니다..! AWS사 혹은 GCP(Google)사의 관리형 프로그램을 사용하여 배포하는 방법JAR 파일을 직접 전송해서 가상머신에서 실행하는 방법스프링부트 프로젝트를 도커(Docker) 이미지로 만들고 푸쉬(push)하고, 가상 머신에서 그 이미지를 풀(pull) 해서 실행하는 방법 - Docker Hub, GHCR(GitHub Container Registry)..

스프링(서버)에서 응답 데이터를 만드는 방법은 3가지 정도가 있습니다. 1. 정적 리소스 -> 웹 브라우저에 정적인 상태의 HTML, CSS, JS를 제공하는 것입니다. 간단한 예를 들자면... 웰컴 페이지가 있겠네요! 스프링 부트에서는 '/static', '/public', 'resources', '/META-INF/resources' 디렉토리에 있는 정적 리소스를 제공합니다! 'src/main/resources'는 리소스를 보관하는 곳이고, 클래스패스의 시작 경로입니다. 그러므로, 'src/main/resources/static' 디렉토리에 리소스를 넣으면 스프링 부트는 정적 리소스로 서비스를 제공하게 되는것이죠! 2. 뷰 템플릿 -> 뷰 템플릿을 거쳐서 HTML을 생성하고, 뷰가 응답을 만들어서 웹..

Junit4에 익숙하시던 분들이나 예전 강의를 보게 되는 경우 예외 상황 케이스가 잘 작동하는 지 테스트를 할 때 @Test(expected = IllegalStateException.class) 이런 식으로 작성을 하셨던 분이 많으실 겁니다... 그런데 이게 Junit5로 넘어오면서 없어졌습니다... 그 대신에 Assertions.assertThrows를 쓰면 되는데요...! 이게 처음에만 보기에 어렵지 쓰다 보면 그냥 전처럼 쓰실 수 있습니다...! 굳이 fail 같은 걸 쓸 필요도 없어지고, 여러 개를 검증해 볼 수 있어서 이점이 더 많습니다! 사용방법은 @Test public void 중복회원_예외() throws Exception { Member member1 = new Member(); mem..

흠... 김영한 개발자님의 강의를 듣던 중 갑자기 열받게 Testing을 하려는데 안 되는 경우가 생겼습니다... 왜 안 되는가... 봤더니 교재 및 강의에선 Junit4를 사용하고, 저의 경우엔 Junit5로 돌아가고 있던 것이였습니다... 이런이런... 그렇다고해서 Test 코드를 Junit4로 설정해도 되질 않습니다... 하아...~ 찾아보니 스프링 부트 2.1.x 버전을 사용하지 않고, 2.2.x 이상 버전을 사용하면 Junit5가 설치된다고 하네요... 뭐 그렇다치고 해결책은 뭘까 하면서 에러 메시지를 뜯어보고 열심히 찾아보니... import org.junit.Test; 이 놈이 문제였습니다... 이 놈 대신에 import org.junit.jupiter.api.Test; 요 놈을 써주시면 되..