초간단 Spring boot + MongoDB 연동 (gradle)

liljoon·2024년 6월 5일

환경

  • Spring boot 3.3
  • MongoDB 7.0.11

목차

  1. Spring Data MongoDB dependecy 추가
  2. application.yaml 에서 연결할 DB 설정

1. Spring Data MongoDB 추가

build.gradle

dependencies {
	//...
	implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
    //...
}

RDB 에서 Data JPA 대신 하는 것이다.


2. application.yaml 에서 연결할 DB 설정

2-1 항목별로 디테일하게 작성

  spring:
    data:
      mongodb:
        host: "mongoserver1.example.com"
        port: 27017
        database: "test"
        username: "user"
        password: "secret"

2-2 uri 로 한번에 작성

spring:
  data:
    mongodb:
      uri: "mongodb://{user}:{password}@{host}:{port}"/{database}

주의!
위의 경우는 해당 데이터베이스의 유저로 접속하는 경우이다.
1. 전체 Admin 계정일 경우는 authentication-database: "admin" 를 추가해야한다. 기본 admin은 admin database에 생성된다.
uri 경우는 ?authSource=admin 뒤에 추가
2. 최초 인증 설정 없이 mongodb를 실행시키면 별도의 인증 절차 없이 접속이 가능하다. 그럴경우 username, password 없이 접속

좀 더 구체적인 명시를 위해 2-1번이 권장될 것 같다. 또한 보안상 데이터베이스의 유저를 생성하여 해당 권한으로 접속하는 것이 좋을 것 같다.

참고 : https://docs.spring.io/spring-boot/reference/data/nosql.html#data.nosql.mongodb

0개의 댓글