[Docker] Spring Boot에서 Docker Compose로 MySQL 환경 구성하기
·
공부일기../Docker
인트로"어? 내 컴퓨터에서는 잘 되는데 왜 너 컴퓨터에서는 안 돼?" 특히 데이터베이스 연결 부분에서 이런 일이 자주 일어난다.한 명은 MySQL을 직접 설치해서 쓰고, 다른 한 명은 Docker로 띄워서 쓰고... 이런 식으로 각자 다른 환경에서 개발하면 나중에 배포할 때 문제가 생기기 마련이다. 그래서 오늘은 Docker Compose를 활용해서 팀 전체가 동일한 MySQL 환경을 쓸 수 있도록 설정하는 방법을 알아보려고 한다.그리고 내가 자꾸만....겪는 도커에서 자동으로 데이터베이스가 왜생성안되는지까지 포스팅하도록 하겠다. 1. Docker Compose로 MySQL 띄우기[프로젝트 구조!]├── Spring Boot App (Port 8080)│ ├── Profile: local → My..
[Spring-legacy] 이거 @RequestBody Map으로 받아도 되나요?
·
공부일기../Spring
인트로~오늘 회사에서 신입사원이 화면단에서 데이터를 data: JSON으로 넘기는데 뒤에 있던 일부 객체 필드를 누락시켰더니 서버에서 전체 JSON이 그대로 받아졌다고 했다. 그럴 수밖에 없는 게 @RequestBody는 말 그대로 HTTP 요청의 바디(body)를 그대로 긁어서 Java 객체로 매핑해주는 방식이기때문이다. 하지만 문제는… 회사 프로젝트가 레거시라서 요청을 @RequestBody Map로 받고 있다는 거였다. 이러면 JSON 구조가 조금만 달라도 바로 400 Bad Request 터지는 구조다ㅋㅋ @RequestParam으로 바꾸면안되냐고 말하길래 그럼 이제는 JSON 객체를 제대로 묶어서 받지도 못하고 필드 하나하나 전부 파라미터로 풀어서 받아서 다시 조립할거냐구.. ㄹㅈㄷ 비효율 그래..
[Spring Boot 게시판 ②] CRUD API 설계 (1/3)
·
공부일기../Spring
시리즈 포스팅!! SprintBoot로 게시판 만들기 ②📝(API명세서, ERD작성) - 1SprintBoot로 게시판 만들기 ②📝(CRUD 구현_설정부) - 2SprintBoot로 게시판 만들기 ②📝(CRUD 구현_개발) - 3SprintBoot로 게시판 만들기 ②📝(CRUD 구현_테스트) - 4 1. 데이터베이스 설계 및 ERD 작성 게시글 요구사항에서는 게시물의 제목, 내용,비밀번호, 작성자명,작성날짜 는 필수로 필요했고조회수는 내가 임의로 넣었다.. 블로거로서 조회수는 포기할 수 없는 지점이라..ㅋ 사용자 테이블은 기타 필요한 항목들이있지만 (이메일, 전화번호등,,) 패스 하기로했다가입날짜정도는 필요하다구 생각했고 , 사실 추가 요구사항에 권한 부분이있어서 사용자 테이블에 권한ID를 ..