mongoDB安装学习
安装 网址:https://blog.csdn.net/u010438469/article/details/89852014
导入需要的jar包 绑定依赖
import com.mongodb.*;
import jdk.nashorn.internal.objects.annotations.Setter;
import java.net.UnknownHostException;
import java.util.Random;
import java.util.Set;
public class JMongoDB {
public static void main(String[] args) throws UnknownHostException, MongoException {
//Mongo m = new Mongo();//默认本地
//Mongo m = new Mongo("192.168.0.101");//默认端口
Mongo m = new Mongo("127.0.0.1", 27017);
//获取名为 alan 的数据库,不存在的情况下创建
DB db = m.getDB("student");
//获取所有数据库,不显示无collection的db
System.out.println("所有数据库名:" + m.getDatabaseNames());
//获取名为 testCollection 的collection(相当于表),不存在的情况下创建
DBCollection coll = db.getCollection("student");
System.out.println(insert(coll).toString());;
select(coll);
find(db,coll);
}
//增加操作
public static WriteResult insert(DBCollection coll){
BasicDBObject obj = null;
Random rr= new Random();
for (int i=0;i<=10;i++) {
obj = new BasicDBObject();
obj.put("name", "jone"+i);
obj.put("sex", "male");
BasicDBObject info = new BasicDBObject();
info.put("height", (rr.nextInt(5)+1)*39);
info.put("weight", (rr.nextInt(20)+60));
obj.put("other", info);
}
return coll.insert(obj);
}
//查询height小于175,weight不等于65的对象
public static void select(DBCollection coll) {
BasicDBObject query2 = new BasicDBObject();
query2.put("other.height", new BasicDBObject("$lt", 175));
query2.put("other.weight", new BasicDBObject("$ne", 65));
DBCursor it2 = coll.find(query2);
while (it2.hasNext()) {
System.out.println(it2.next());
}
}
//统计
public static void find(DB db,DBCollection coll){
//获取数据库下所有的collection,不显示无数据的collection
Set<String> colls = db.getCollectionNames();
for(String s : colls){
System.out.println(s);
}
//查询coll中全部记录
DBCursor ite = coll.find();
while(ite.hasNext()){
System.out.println(ite.next());
}
//获取第一条记录
DBObject o = coll.findOne();
System.out.println(">>>>>>>>>>>>>>>>\n"+o);
//统计colletion的数据条数
System.out.println(coll.getCount());
}
public static void dele(DBCollection coll){
//删除操作
showData(coll);
BasicDBObject rmove = new BasicDBObject();
rmove.put("name", "jone");
coll.remove(rmove);
//coll.findAndRemove(rmove);//可以用findAndRemove删除 ,不过这个方法之能删除一条符合条件的记录
System.out.println(
">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
);
showData(coll);
}
//更新
public static void update(DBCollection coll){
//更新操作
showData(coll);
BasicDBObject old_obj = new BasicDBObject();
old_obj.put("name", "mark");
//这里的new_val对象一定要是find出的而不是new的,否则多字段的情况下就会丢失其它字段信息
DBObject new_val = coll.findOne(old_obj);
new_val.put("name", "zhoulong");
/**这里只能修改一条满足条件的记录,而且根据API用updateMulti方法或者设置update第四个参数也无效,
* 如果要批量跟新就要查询后,循环遍历更新了
*/
coll.update(old_obj, new_val);
showData(coll);
}
//遍历数据
static void showData(DBCollection col)
{
DBCursor ite = col.find();
while(ite.hasNext())
{
System.out.println(ite.next());
}
}
}
进入安装目录找到bin将其加入环境配置中
在cmd中 使用mongo进入