MongoDB Download(MacOS)
다운로드참조페이지
위를 참조하여 mongoDB 다운로드 이후, mongod 실행시켜준다.
test계정생성
위를 참조하여 테스트할 계정 및 데이터베이스와 콜렉션을 생성해준다.
pom.xml 수정
몽고디비와의 연결을 위해서는 라이브러리를 사용해야 한다. 기본적으로 아래의 두 개의 라이브러리 설정을 해준다.
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.2.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-mongodb -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
context.xml
2개의 라이브러리를 추가한뒤에 설정파일을 추가하여 준다.
필자는 resources에 context-mongo.xml로 저장하였다.
credentials라는 부분에는 "사용자아이디:비밀번호@컬렉션이름" 형식으로 입력한다.
<mongo:mongo-client
host="host_ip"
port="port_num" credentials="mongo_user:password@collection_name" >
<mongo:client-options
connections-per-host="8"
threads-allowed-to-block-for-connection-multiplier="4"
connect-timeout="1000"
max-wait-time="1500"
socket-keep-alive="false"
socket-timeout="1500"
/>
</mongo:mongo-client>
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongo" />
<constructor-arg name="database_name" value="collection_name" />
</bean>
web.xml 설정
해당 파일이 스프링이 로드되면서 읽혀지도록 web.xml에 추가하여준다.
contextConfigLocation classpath*:context-mongo.xml
여기까지 설정 이후 서버 실행시 아무런 문제가 없는지 확인한다.
(base) ibohyeon-ui-MacBookPro:data ibohyeon$ tail -100f mongod.log
2020-05-06T00:02:41.850+0900 I CONTROL [initandlisten] MongoDB starting : pid=8777 port=27017 dbpath=data/db 64-bit host=ibohyeon-ui-MacBookPro.local
2020-05-06T00:02:41.850+0900 I CONTROL [initandlisten] db version v3.2.22
2020-05-06T00:02:41.850+0900 I CONTROL [initandlisten] git version: 105acca
$ sudo vi /etc/hosts
(base) ibohyeon-ui-MacBookPro:mongodb ibohyeon$ cat /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
127.0.0.1 ibohyeon-ui-MacBookPro.local
# Added by Docker Desktop
# To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal
# End of section
'웹 어플리케이션 공부 > Spring 공부' 카테고리의 다른 글
스프링 필터 (0) | 2022.01.23 |
---|---|
Spring으로 개발하며 맞닥뜨린 CORS! (1) | 2021.12.08 |
Spring 공부 - 초기 설정 (0) | 2019.08.16 |