mongoDB는 id를 String 형태의 문자열로 구성하고 있고, 이를 강제로 Long으로 바꾸어 사용할 수 있지만, 그럴 경우 MongoRepository의 findBy 관련 함수들을 많이 튜닝해줘야 하는 단점이 보였기에 별도로 Long 형태의 idx를 collection에 추가하여 사용하려 합니다. RDS에서 제공하는 auto increment기능이 noSQL에는 없기 때문에, 각 collection의 idx 마지막 값을 저장하는 별도의 collection을 구성하여 auto increment 기능을 구현하였습니다. 1. collection들의 마지막 idx를 가지고 있는 DatabaseSequence Class 생성하기 members collection의 Long idx의 마지막 값을 가지는 d..
Spring Boot와 MongoDB를 공부하기 위해 사이드 프로젝트를 시작하려고 마음먹은 지 오래되었지만 막상 혼자서 공부하려니 너무 막연하고 주제도 못 정하고 있었습니다. 때문에 모든 사이트의 기본인 회원 관련 API부터 구현해보기로 마음먹고 첫발을 내딛습니다. [기술 스택] Gradle 7.4.2 Spring Boot 2.7.1 openJDK 18.0.1.1 mongoDB 4.4 (본문에서 다루는 모든 패키지는 com.kimmingyu.aws 하위에 선언하고 있기 때문에 본인의 프로젝트에 맞게 수정합니다.) 1. Gradle 필요 의존성 주입 아래 2개의 dependencies는 필수로 추가합니다. modelmapper를 사용하여 Object에서 Obejct로 값을 옮길때 번거롭게 getter, s..
스프링(Spring)의 설정이 복잡하여 좀 더 쉽게 웹 서비스를 구현할 수 있게 만들어진 스프링 부트(Spring Boot) FrameWork를 사용하여 로컬 환경에서 web 서비스를 구현해 봅니다. IntelliJ에서 보다 쉽게 Spring Project를 생성하게 도와주는데 실제로 사용해보니 정말 간편하여 포스팅합니다. 1. New Project 진입하기 [File] > [New] > [Project]를 통하여 새로운 프로젝트를 생성하는 창을 열어줍니다. 2.Generators 메뉴의 Spring Initializr 활성화 하기 Generators 메뉴의 Spring Initializr를 클릭하여 원하는 언어 및 Build Tool, Location, Project Name, JDK버전 등을 을 설정..