问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

python测试mongo连接是否有效

发布网友 发布时间:2022-04-30 09:51

我来回答

2个回答

懂视网 时间:2022-04-30 14:12

.find({"_id":{"$in":[1001,1002,1]}})

–$or

db.Student.find({"$or":[{"_id":99},{"pageViews":2}]})

–and and or

db.Student.find({"pageViews":2,"$or":[{"_id":99}]})

游标控制


for(i=0;i<10;i++){
 db.Student.insert({"_id":i});
}

var cursor=db.Student.find();
cursor.forEach(function(x){
 print(x);
});

–分页查询

db.Student.find().limit(3) 
db.Student.find().limit(3).skip(3)

–排序

db.Student.find().sort({"_id":-1}) --1为升序,-1为降序
db.Student.find().sort({"_id":-1,"pageView":1}) --前面如果相同就按后面pageView的升序来排序

DBHelper:

package com.yc.link;

import java.net.UnknownHostException;

import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.Mongo;
import com.mongodb.MongoException;

public class DBHelper {
 private static Mongo mongo=null;
 private DB db=null;
 static{
  try {
  mongo=new Mongo(Mypro.getInstance().getProperty("ip"),Integer.parseInt(Mypro.getInstance().getProperty("port")));
  } catch (NumberFormatException e) {
  e.printStackTrace();
  } catch (UnknownHostException e) {
  e.printStackTrace();
  } catch (MongoException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
 }
 public boolean getDB(String dbName,String name,String pwd){
  mongo.getDB(dbName);
  if(name!=null&&!"".equals(name)&&pwd!=null&&!"".equals(pwd)){
  if(db.authenticate(name, pwd.toCharArray())){
   return true;
  }else{
   return false;
  }
  }else{//查看配置文件中是否给定用户名和密码
  String uname=Mypro.getInstance().getProperty("uname");
  String pwds=Mypro.getInstance().getProperty("password");
  if(name!=null&&!"".equals(name)&&pwd!=null&&!"".equals(pwd)){
   if(db.authenticate(name, pwd.toCharArray())){
   return true;
  }else{
   return false;
  }
  }
 }
 return true;
}
 /**
  * 关闭链接
  * */
public void closeAll(Mongo mongo){
 if(mongo!=null){
 mongo.close();
 }
}
/**
 * 获取指定的集合
 * collectionName要链接的集合
 * dbName集合所在的数据库
 * 链接数据的用户名
 * 链接数据库的密码
 * 
 * */
public DBCollection getDBCollection(String collectionName,String dbName){
 DBCollection dbCollection=null;
 if(getDB(dbName,null,null)){
 db.requestStart();
 if(collectionName==null){//如果为空则冲配置文件中加载
  collectionName=Mypro.getInstance().getProperty(collectionName);
 }
 dbCollection= db.getCollection(collectionName);
 }else{
 throw new RuntimeException("数据库连接失败.....");
 }
 return dbCollection;
}

public DBCollection getDBCollection(String collectionName,String dbName,String name,String password){
 DBCollection dbCollection=null;
 if(getDB(dbName,name,password)){
 db.requestStart();
 if(collectionName==null){//如果为空则冲配置文件中加载
  collectionName=Mypro.getInstance().getProperty(collectionName);
 }
 dbCollection= db.getCollection(collectionName);
 }else{
 throw new RuntimeException("数据库连接失败.....");
 }
 return dbCollection;
}
}

Mypro:单例

package com.yc.link;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

public class Mypro extends Properties {
 private static Mypro instance=new Mypro();
 private Mypro(){
  InputStream is=Mypro.class.getResourceAsStream("/db.properties");
  try {
  this.load(is);
  } catch (IOException e) {
  e.printStackTrace();
  }finally{
  if(is!=null){
   try {
   is.close();
   } catch (IOException e) {
   e.printStackTrace();
   }
  }
  }
 }
 public static Mypro getInstance(){
  return instance;
 }
}
package com.yc.link;


public class Test {
 public static void main(String[] args) {
  DBHelper db=new DBHelper();
  System.out.println(db);
 }


}

db.properties

ip=127.0.0.1

port=27017

dbName=

uname=

password=

collectionName=

DBHelper里应该要多封装一些常用方法,大家可以到网上慢慢收集

版权声明:本文为博主原创文章,未经博主允许不得转载。

mogodb连接测试

标签:mogodb连接

热心网友 时间:2022-04-30 11:20

(1)先在mongodb中执行
ISODate("2015-02-01T00:00:00Z").valueOf()

会得到
1422748800000

(2)使用可以使用以下条件进行查询
"lastAccessTime" : {$gte: new date(1422748800000)}
但是在python中会提示语法错误,
可以按照如下来解决:
from datetime import datetime
查询条件可以写成
"lastAccessTime" : {"$gte": datetime(2015, 2, 1)}
这样就可以解决了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... 零基础,想考会计证,应学哪些知识? 请问 我想考会计证 没有任何基础 好考么 都考些什么? 会计零基础应先考什么证?怎么样去进阶? 怎么劫持DNS 中国国家赔偿法原则是什么 国家规定赔偿法33条34条是怎么规定的 以我国国家赔偿法规定侵犯公民生命健康权造成死亡的赔偿金如何计算 dns劫持如何解决 根据赔偿法规定我国的主体是国家么 我国国家赔偿法规定侵犯公民生命健康权造成死亡的赔偿金的计算式 我国国家赔偿法中所确定的基本原则有哪些 我国国家赔偿的规则原则是什么 简述我国国家赔偿法的渊源 以我国国家赔偿法规定侵犯公民生命健康权造成死亡的赔偿金的计算式 我国国家赔偿法的基本原则 我国国家赔偿标准有哪些 中国国家赔偿法赔偿时间怎么规定的 我国国家赔偿法所确定的基本原则有哪些? 我国国家赔偿法如何规定的 国家赔偿法基本原则是什么 资产质量差是个什么意思呢 能举例说明吗 我会追加分 商业银行金融资产质量管理含义、内容、要求 什么是资产质量 银行资产质量存量迁徙什么意思? 请问不同手机的牌子下载的B6|2相机效果一样吗? 相机b620为什么识 张栋梁的照相机 我的excel中有个签名照片,我想能够随时调用它,就像调用一个单元格一样(例如:=B6),请问如何做? 详细 物理选择题八年级上册,带答案字少一点。 电脑蓝屏,windows无法启动 求生化危机4NGC美版金手指 多啦a梦每集的名称 愁死了,,才在有啊开了个新店, http:&#47;&#47;youa.baidu.com&#47;shop&#47;90e1ffeb55de07bbce2b6afe是卖饰品的, c#怎么判断mongodb是否连接 我想送外卖 要怎样加入呢 美团外卖 k宝和k令有什么不同 我家联通宽带需网页认证上网怎么办 农行K宝和口令卡有什么区别 宽带显示需要认证和登录是怎么回事? 和平精英小幺的粉丝群怎么加?