분류 전체보기

스프링 MongoDB 라이브러리와 쿼리 스프링에서 제공되는 MongoDB 라이브러리를 사용하면, 단순히 MongoRepository를 상속 받는 인터페이스를 만드는 것만으로도 필요한 쿼리를 모두 만들어준다. 예를 들어 다음과 같은 books 컬렉션을 만들고, Book Document를 이 컬렉션에 저장한다고 해보자. @Document(collection = "books") data class Book( @Id val id: String? = null, val bookName: String, val description: String ) 그러면 해당 역할을 하는 BookRepository는 다음과 같이 만들 수 있다. interface BookRepository : MongoRepository BookRe..
· Spring/Error
애러 원인 스프링 부트를 사용한 앱의 모듈화를 진행하다가 다음과 같은 오류가 발생했다. * What went wrong: Execution failed for task ':test-module:compileKotlin'. > Could not resolve all files for configuration ':test-module:compileClasspath'. > Could not find org.springframework.boot:spring-boot-starter-data-mongodb:. 원인은 스프링 부트 스타터(spring-boot-starter) 라이브러리를 사용하려면 플러그인이 설정되어 있어야 하는데 설정되지 않아서였다. 문제 해결 방법 라이브러리 모듈에서의 해결 방법 문제를 해결하기 ..
· Spring/Error
애러 원인 해당 애러는 Spring에서 코루틴과 관련된 코드를 사용하고 있는데, 코루틴 라이브러리에 대한 의존성이 설정되지 않아 발생한다. 예를 들어 다음과 같이 컨트롤러를 만들면, 코틀린에는 기본적으로 일시 중단 함수가 내장되어 있기 때문에 컴파일러에서 오류가 발생하지 않지만, 스프링 프레임웍 내부적으로 CoroutineScope에서 코루틴을 실행해 해당 일시 중단 함수를 실행하기 때문에 오류가 발생한다. @Controller class CoroutineTestController() { @GetMapping("/coroutine/call") suspend fun callCoroutine(): ResponseEntity { // 일시 중단 함수 사용 return ResponseEntity.ok("Coro..
· Spring/MVC
스프링에서 코틀린 코루틴 사용하기 코틀린은 언어적으로 코루틴을 지원하지만, 코루틴의 고급 기능들을 사용하기 위해서는 젯브레인에서 제공하는 코루틴 라이브러리에 대한 별도의 의존성을 추가로 설정해야 한다. 이는 스프링도 예외가 아니다. 먼저 별도의 의존성을 설정하지 않고, 코루틴을 사용해보면 어떤 일이 일어나는지 살펴보자. 이를 확인하기 위해 다음과 같이 컨트롤러를 만든다. @Controller class HomePageController() { @GetMapping("/bloginfo/kotlinworld") suspend fun getBlogInfo(): ResponseEntity { val blogInfo = BlogInfo("조세영의 Kotlin World", 3) return ResponseEnti..
· IDE/Intellij
이번 글의 목표 이번 글에서는 IntelliJ에 MongoDB를 연결하고 내부를 탐색하는 방법에 대해 알아본다. IntelliJ에 MongoDB 연결하기 Database 탭 열기 먼저 IntelliJ 에서 오른쪽 사이드 바에 있는 Database 탭을 연다. 만약 사이드 바에서 Database 탭을 찾지 못할 경우 View-Tool Windows-Database 를 누르면 보일 것이다. Data Source 추가하기 MongoDB를 모니터링 하기 위해서는 실행 중인 MongoDB 정보를 추가해야 한다. 데이터베이스 탭에서 + 버튼 - Data Source - MongoDB를 누른다. *여기서는 최근에 MongoDB를 사용해서 맨 위에 있지만, 실제로는 목록에서 MongoDB를 찾아야 한다. 그러면 그림4..
Dev.Cho
'분류 전체보기' 카테고리의 글 목록 (4 Page)