分类:MongoDB

mac 终端连接mongo和关闭mongo

1、连接mongo:
cd 到mongodb的bin目录,执行:
sudo ./mongod

==========================

2、打开另一个终端:
进入mongo的bin目录:
./mongo

==========================

3、正确退出mongo,不然会报错
use admin;
db.shutdownServer();

java mongo的使用(持续记录。。。)

1、查询mongo中的 day 字段大于起始时间(start)小于结束时间(end)

  Criteria criteria = Criteria.where("day").gte(start).lte(end);
  List<JSONObject> dailyValue = template.find(new Query(criteria),JSONObject.class,collectionNm);

2、in查询 查询mongo中的day字段在basicdblist中的所有数据

 BasicDBList basicList = new BasicDBList();
  basicList.add()
  Criteria criteria = Criteria.where("day").in(basicList);
  List<JSONObject> monthValues = template.find(new Query(criteria),JSONObject.class,“这是collection名”);

java读取mongo数据库的所需的字段-json解析

mongo数据库的配置和引入阿里巴巴的fastjson包 自行百度

package com.wjy329.tesmongo.dao.impl;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.wjy329.tesmongo.dao.DayTotalService;
import org.bson.BSONObject;
import org.bson.types.ObjectId;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Service;

import java.util.Map;
import java.util.Set;

/**
 * @author wjy329
 * @date 2018/5/25
 * @description ${description}
 */
@Service
public class DayTotalServiceImpl implements DayTotalService {
    @Autowired
    //MongoTemplate 可操作mongo数据库
    MongoTemplate template;

    @Override
    public JSONArray getTotalInfo() {
        //获取到day为20180524的数据
        DBObject query = new BasicDBObject("day", "20180524");
        DBObject document = template.getCollection("update_total_model").findOne(query);
        //将数据转为json
        Object content = JSON.toJSON(document);
        JSONObject jsonObject=JSON.parseObject(content.toString());
        //移除_id的数据
        jsonObject.remove("_id");
        //获取字段的数据
        JSONObject test = jsonObject.getJSONObject("xxx");
       //array存放最终的数据
        JSONArray array = new JSONArray();
        //每个obj为一个数据段,可以理解为最后数据中的一个{}     ----[{},{}]
        JSONObject obj = new JSONObject();
        obj.put("day",datetime);
        ......
        ......
        {
         JSONObject allValue = jsonObject.getJSONObject(ccc).getJSONObject("all");
         Object ddd = allValue.get("ddd");
            obj.put("aaaa",cccc);
            obj.put("bbbb", ddd);
        }
           array.add(obj);
        System.out.println("请求数据"+array);
        return array;
    }
}