Visão geral
O MongoDB Scala Driver é uma API assíncrona construída sobre o driver Java Reactive Streams, que você pode usar para se conectar ao MongoDB e interagir com dados armazenados em seu sistema. Este guia mostra como criar um aplicação que usa o driver Scala para se conectar a um cluster MongoDB hospedado no MongoDB Atlas e consultar dados em seu cluster.
Dica
O MongoDB Atlas é um serviço de banco de dados em nuvem totalmente gerenciado que hospeda seu Implantações do MongoDB. Você pode criar sua própria implantação do MongoDB Atlas gratuita (nenhum cartão de crédito exigido) seguindo as etapas deste guia.
Siga este guia para conectar um aplicação Scala de amostra a uma implantação do MongoDB Atlas . Se você preferir se conectar ao MongoDB usando um driver ou uma linguagem de programação diferente, consulte nossa lista de drivers oficiais.
Baixar e instalar
Criar uma diretoria de projeto
Execute o seguinte comando em sua shell para criar um diretório chamado scala-quickstart
para este projeto:
mkdir scala-quickstart
Selecione a aba correspondente ao seu sistema operacional e execute os seguintes comandos para criar um arquivo build.sbt
no diretório scala-quickstart
:
cd scala-quickstart touch build.sbt
cd scala-quickstart type nul > build.sbt
Configure seu projeto para usar o driver Scala
Navegue até seu arquivo build.sbt
e adicione o seguinte código para usar o driver Scala em seu aplicação:
ThisBuild / scalaVersion := "2.13.16" libraryDependencies += "org.mongodb.scala" %% "mongo-scala-driver" % "5.5.1"
Este código configura seu aplicação para usar a versão 2.13.16 do driver Scala e a versão 5.5.1 do driver Scala.
Depois de concluir estas etapas, você tem um novo diretório de projeto com as dependências do driver instaladas.
Criar uma MongoDB deployment
Você pode criar uma implantação MongoDB de camada gratuita no MongoDB Atlas para armazenar e gerenciar seus dados. O MongoDB Atlas hospeda e gerencia seu banco de dados MongoDB na nuvem.
Crie uma MongoDB deployment gratuita no Atlas
Complete o guia Iniciar com Atlas para configurar uma nova conta Atlas e carregar dados de amostra em uma nova implantação MongoDB de camada gratuita.
Após concluir estas etapas, você terá uma nova implantação de camada grátis do MongoDB no Atlas, credenciais de trigger de banco de dados e dados de exemplo carregados no seu reconhecimento de data center.
Criar uma connection string
Você pode se conectar à sua implantação do MongoDB fornecendo um URI de conexão, também chamado de connection string, que instrui o driver sobre como se conectar a uma implantação do MongoDB e como se comportar enquanto estiver conectado.
A cadeia de conexão inclui o nome do host ou endereço IP e porta de sua implantação, o mecanismo de autenticação, as credenciais do usuário quando aplicável, e opções de conexão.
Para saber como se conectar a uma instância ou sistema não hospedado no Atlas, consulte o guia Escolher um Destino de Conexão.
Encontre sua connection string do MongoDB Atlas
Para recuperar a string de conexão da implantação criada na etapa anterior, faça login na sua conta do Atlas e navegue até a seção Database e clique no botão Connect para a nova implantação.

Em seguida, selecione a opção Drivers no cabeçalho Connect to your application. Selecione "Scala" no menu de seleção Driver e a versão que melhor corresponde à versão instalada no menu de seleção Version.
Depois de concluir essas etapas, você tem uma string de conexão que corresponde ao seu Atlas cluster.
Conecte-se ao MongoDB
Depois de recuperar a string de conexão para sua implantação do MongoDB Atlas , você pode se conectar à implantação do seu aplicação Scala e consultar os conjuntos de dados de amostra do Atlas .
Criar um arquivo de aplicação
Navegue até o diretório scala-quickstart
que você criou na etapa Baixar e instalar deste guia e crie os diretórios aninhados src/main/scala/quickstart
.
Selecione a guia correspondente ao seu sistema operacional e execute os seguintes comandos para criar um arquivo Main.scala
no subdiretório quickstart
:
cd src/main/scala/quickstart touch Main.scala
cd src/main/scala/quickstart type nul > Main.scala
Adicionar métodos assistente
Adicione o seguinte arquivo Helpers.scala
do código-fonte do driver ao diretório src/main/scala/quickstart
:
package quickstart import java.util.concurrent.TimeUnit import scala.concurrent.Await import scala.concurrent.duration.Duration import org.mongodb.scala._ object Helpers { implicit class DocumentObservable[C](val observable: Observable[Document]) extends ImplicitObservable[Document] { override val converter: (Document) => String = (doc) => doc.toJson } implicit class GenericObservable[C](val observable: Observable[C]) extends ImplicitObservable[C] { override val converter: (C) => String = (doc) => Option(doc).map(_.toString).getOrElse("") } trait ImplicitObservable[C] { val observable: Observable[C] val converter: (C) => String def results(): Seq[C] = Await.result(observable.toFuture(), Duration(10, TimeUnit.SECONDS)) def headResult() = Await.result(observable.head(), Duration(10, TimeUnit.SECONDS)) def printResults(initial: String = ""): Unit = { if (initial.length > 0) print(initial) results().foreach(res => println(converter(res))) } def printHeadResult(initial: String = ""): Unit = println(s"${initial}${converter(headResult())}") } }
Este arquivo permite acessar métodos assistente para imprimir resultados de consulta.
Adicionar o código da aplicação
Copie e cole o seguinte código no arquivo Main.scala
, que consulta a coleção movies
no banco de banco de dados sample_mflix
:
package quickstart import org.mongodb.scala._ import org.mongodb.scala.model.Filters._ import Helpers._ object Main { def main(args: Array[String]): Unit = { val mongoClient = MongoClient("<connection string>") val database: MongoDatabase = mongoClient.getDatabase("sample_mflix") val collection: MongoCollection[Document] = database.getCollection("movies") val filter = equal("title", "The Shawshank Redemption") collection.find(filter).printResults() mongoClient.close() } }
Atribuir a connection string
Substitua o placeholder <connection string>
pela string de conexão que você copiou da etapa Criar uma Connection string deste guia.
Execute seu aplicação Scala
No diretório raiz do projeto , execute os seguintes comandos para iniciar o shell sbt e executar seu aplicação:
sbt run
A saída da linha de comando contém detalhes sobre o documento de filme recuperado:
{"_id": {"$oid": "..."}, ... , "genres": ["Crime", "Drama"], "rated": "R", "metacritic": 80, "title": "The Shawshank Redemption", ... }
Se você encontrar um erro ou não vir nenhuma saída, verifique se especificou a string de conexão adequada no arquivo Main.scala
e se carregou os dados de amostra.
Dica
Você pode sair do sbt shell executando o seguinte comando:
exit
Depois de concluir essas etapas, você tem um aplicação Scala que se conecta à implementação do MongoDB , executa uma query nos dados de amostra e retorna um documento correspondente.
Próximos passos
Parabéns por concluir o tutorial de início rápido!
Neste tutorial, você criou um aplicação Scala que se conecta a um sistema MongoDB hospedado no MongoDB Atlas e recupera um documento que corresponde a uma query.
Saiba mais sobre o driver Scala nos seguintes recursos:
Saiba como realizar operações de leitura na seção Ler dados.
Saiba como realizar operações de gravação na seção Gravar dados no MongoDB .
Observação
Caso ocorra algum problema nesta etapa, peça ajuda nos Fóruns da MongoDB Community ou envie feedback pela aba Rate this page no lado direito ou no canto inferior direito desta página.