Mongodb的安装及简单使用

关于Mongodb

Mongodb是一个基于分布式文件存储的数据库。它最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。如下所示:

{
"name":"DilicelSten",
"age":18,
"hobby":["swimming","dancing"]
}

Mongodb的安装

在ubtuntu上可以直接输以下命令行

sudo apt-get install mongodb

安装完之后还需要进行配置
这里可参考:http://unixlzx.blog.163.com/blog/static/102773752201361694345381/
里面已经有详细的步骤介绍,接下来讲讲mongodb中的一些常用的操作:
(1)开启mongodb服务

sudo service mongodb start 

(2)关闭mongodb服务

sudo service mongodb stop

(3)修复命令

mongod -repair

Mongodb的使用

在终端中输入mongo即可连接数据库,mongodb的使用与mysql是很相似的,下表是mongodb的一些术语:

mysql术语mongodb术语解释
databasedatabase数据库
tablecollention数据库表/集合
rowdocument数据记录行/文档
columnfield数据字段/域
indexindex索引
primary keyprimary key主键,MongoDB自动将_id字段设置为主键

常用命令:
(1)操作前都需使用相关的数据库

show dbs    //查看数据库
use XXX     //使用XXX数据库

(2)建表存储数据

show collections   //查看其中的表
db.XXX.find()   //查看表中数据(XXX为collection的名字)

(3)插入数据

db.col.insert({
"name":"DilicelSten",
"age":18,
"hobby":["swimming","dancing"]
})

(3)远程连接

mongo 192.168.235.20/admin -u root -p *****

Java程序实现

需下载mongodb的jdbc,下载链接:https://pan.baidu.com/s/1cH1NQY

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

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


public class Mongodb {
    public static void main(String[] args) throws MongoException, IOException{
        mongodb();
    }

    public static void mongodb() throws MongoException, IOException{

        //链接数据库
        Mongo connection = new Mongo("127.0.0.1",27017); //url与端口
        DB db = connection.getDB("weiboUser");//数据库名字
        boolean ok = db.authenticate("root", "***".toCharArray());  //认证过程,用户名(String)和密码(char[])

        if(ok){
            System.out.println("db connection success!");

            //插入数据,mongodb的默认_id为主键,
            //在默认的情况下会自己添加哈希值,建议自定义_id,不然很可能会插入很多重复
            DBCollection collection = db.getCollection("Region"); 
            //最基本的属性
            BasicDBObject attribute = new BasicDBObject();
            attribute.put("_id", "5");
            attribute.put("电影名","星球大战");

           //地区(太多进行读取)
           BasicDBObject region = new BasicDBObject();
           String path = "/home/hadoop/Seeing项目内容/result/属性/地区.txt";
           String region_line;
           BufferedReader br = new BufferedReader(new FileReader(new File (path)));
           while((region_line = br.readLine()) != null){
               String[] result = region_line.split(",");
               region.put(result[0], result[1]);       
           }
           attribute.put("地区", region);
            collection.insert(attribute);
        }
        else{
            System.out.println("connection error");
        }
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值