mongocollection java_Java使用MongoDB

1.初始化MongoTemplate

// 设置IP和端口

ServerAddress serverAddress = new ServerAddress(“127.0.0.1”, 27017);

MongoClientOptions.Builder builder = new Builder();

// 设置当链接空闲时,空闲线程池中最大链接数

builder.connectionsPerHost(100);

// 设置一个线程等待链接可用的最大等待毫秒数

builder.threadsAllowedToBlockForConnectionMultiplier(10);

// 创建客户端并设置数据库

MongoClient mongo = new MongoClient(serverAddress, builder.build());

MongoTemplate mongoTemplate = new MongoTemplate(mongo, DB_NAME);

2.MongoTemplate实现增删改查

查询

// 设置查询条件

Criteria cri = new Criteria();

(1)and查询

//相等 * = VALUE

cri.and(KEY).is(VALUE);

// 不相等 * != VALUE --> $ne

cri.and(KEY).ne(VALUE);

// 大于等于 * >= VALUE --> $gte

cri.and(KEY).gte(VALUE);

//大于 * > VALUE --> $gt

cri.and(KEY).gt(VALUE);

// 小于等于 * <= VALUE --> $lte

cri.and(KEY).lte(VALUE);

//小于 * < VALUE --> $lt

cri.and(KEY).lt(VALUE);

// 模糊查询 * like VALUE

cri.and(KEY).regex((String) VALUE,"i"); // 加上“i”表示不区分大小写比较

// 在其中 * in VALUES --> $in

cri.and(KEY).in((List) VALUES);

// 不在其中 * not in VALUES --> $nin

cri.and(KEY).nin((List) VALUES);

// 两值之间包括两值 VALUE1 <= * <= VALUE2

cri.and(KEY).gte(VALUE1).lte(VALUE2);

// 是否包含某字段 VALUE为true或false --> $exists

cri.and(KEY).exists((Boolean) VALUE);

(2) or查询

List criteriaList = new ArrayList<>();

// 将or查询条件添加到list

criteriaList.add(Criteria.where(KEY).is(VALUE));

criteriaList.add(Criteria.where(KEY).ne(VALUE));

....

// 使用 orOperator(Criteria... criterias)

cri.orOperator(criteriaList.toArray(new Criteria[criteriaList.size()]));

// 将条件传进查询实例

Query query = new Query(cri);

// 设置排序条件

Sort sort = query.sort();

sort.on(KEY, Order.ASCENDING); // 根据KEY ASC正序

或sort.on(KEY, Order.DESCENDING); // 根据KEY DESC逆序

// 根据query查询collection下的记录数

mongoTemplate.count(query, collection);

// 根据query查询collection下的记录并封装成class的实体返回

mongoTemplate.find(query, clazz collection);

// 查询collection下所有记录并封装成class的实体返回

mongoTemplate.findAll(clazz , collection);

删除

// 根据query删除collection下的记录

mongoTemplate.remove(query, collection);

增改

// 保存或更新实体

mongoTemplate.save(obj, collection);

操作集合

// 根据集合名创建集合

mongoTemplate.createCollection(collection);

// 根据集合名删除集合

mongoTemplate.dropCollection(collection);

// 根据集合名获取集合对象

mongoTemplate.getCollection(collection);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值