티스토리 뷰
728x90
반응형
1. pom.xml dependencies에 몽고DB를 추가해줍니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
2. application.properties에 몽고DB 접속정보를 작성합니다.
spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.authentication-database=admin
spring.data.mongodb.database=database
spring.data.mongodb.username=name
spring.data.mongodb.password=password
3. 몽고DB 연동
config.java파일을 하나 만들어서, 몽고DB를 임포트합니다.
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.MongoDatabaseFactory;
import org.springframework.data.mongodb.core.convert.DbRefResolver;
import org.springframework.data.mongodb.core.convert.DefaultDbRefResolver;
import org.springframework.data.mongodb.core.convert.DefaultMongoTypeMapper;
import org.springframework.data.mongodb.core.convert.MappingMongoConverter;
import org.springframework.data.mongodb.core.mapping.MongoMappingContext;
@Configuration
public class WebConfig {
@Bean
public MappingMongoConverter mappingMongoConverter(
MongoDatabaseFactory mongoDatabaseFactory,
MongoMappingContext mongoMappingContext
) {
DbRefResolver dbRefResolver = new DefaultDbRefResolver(mongoDatabaseFactory);
MappingMongoConverter converter = new MappingMongoConverter(dbRefResolver, mongoMappingContext);
converter.setTypeMapper(new DefaultMongoTypeMapper(null));
return converter;
}
}
임포트 에러가 난다면 install과 update를 진행해준 후 임포트 해주면 됩니다.
Run As > Maven install
Maven > Update Project...
spring boot를 run했을 때 아래와 같이 mongodb쪽에 Opened connection이 나오면 정상적으로 연동된 것입니다.
4. 데이터 호출하기
mongoTemplate를 사용하여 데이터를 호출합니다.
mongoTemplate는 도큐먼트 클래스를 무조건 만들어준 후에 find로 받아올 수 있습니다.
아래 블로그를 참고!
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
public class mongoDBfind {
@Autowired
MongoTemplate mongoTemplate;
public void find() {
List<Map> data = mongoTemplate.find(Query.query(Criteria.where("과일").is("사과")), entity.class);
}
}
끝!
728x90
반응형
'프로그래밍 > Java' 카테고리의 다른 글
[java] mybatis 사용된 쿼리 및 가져온 데이터 출력 조회 (0) | 2023.09.20 |
---|---|
Geoserver GIS서비스 개발방법 1 (postgre + geoserver + openlayers) (0) | 2023.08.16 |
[java] 자바에서 JSON API POST 데이터에 리스트 넣어서 호출하는 방법 (0) | 2023.04.27 |
[java] json파일 읽어서 map으로 변환하기 (0) | 2023.04.25 |
[java] 자바에서 CSV파일, JSON파일 불러오는 방법 (0) | 2023.01.23 |
댓글