scala 对mongodb增删改查

获取数据库的连接

private String uri ="mongodb://interface_manager:2wsxCDE#@IP:PORT/?authSource=admin";
private Map<String,MongoTemplate> templateMap = new HashMap<String,MongoTemplate>();

public synchronized  MongoTemplate getTemplate(String databaseName){
    if(templateMap.containsKey(databaseName)){
        return templateMap.get(databaseName);
    } else {
        MongoClientURI clientURI = new MongoClientURI(uri);
        MongoClient client = new MongoClient(clientURI);
        MongoTemplate template = new MongoTemplate(client,databaseName);
        templateMap.put(databaseName,template);
        return template;
    }
}

对数据进行增删改查

import com.mongodb.client.MongoCollection
import com.mongodb.client.model.Filters
import com.mongodb.client.result.DeleteResult
import org.bson.Document
import org.springframework.data.mongodb.core.MongoTemplate
import org.springframework.data.mongodb.core.query.{Criteria, Query}
import utils.MongoDBUtil

/*
	 * @author: ljx
 * @date: 2019/11/16
 * @description:
 */
object testspark {
  def main(args: Array[String]): Unit = {
//创建数据库连接
var mongoClient= new MongoDBUtil
val mongo: MongoTemplate = mongoClient.getTemplate("xzq_test")
val coll: MongoCollection[Document] = mongo.getCollection("collection")
println(coll.count())

//查询
val query = new Query
 val field = query.addCriteria(Criteria.where("name").is("lisi")).fields()
println(query)

//更新
val bson1 = Filters.eq("name", "lisi")
val update =  new Document("$set", new Document().append("name", "wangwu"))
coll.updateOne(bson1, update)


//删除搞定了
  val queryDelete: DeleteResult = coll.deleteMany((Filters.eq("zhangsan",20)))
   println(queryDelete)

//插入没问题
   val document = new Document()
   document.append("name","lisi").append("age",30)
   coll.insertOne(document)

  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值