mongodb安装、启动及java操作
来源:互联网 发布:linkedlist java 编辑:程序博客网 时间:2024/06/06 12:40
最近项目中用到MongoDB 简单的研究了一下 ,还是很简单的,mongoDB是nosql中的佼佼者,被广泛应用的一种非关系型的数据库。
1,mongodb的下载安装,csdn中随便搜索mongodb的资源,一堆,没有的可以加群255453635 加群备注CSDN下载mongodb的资源和java中使用mongodb的驱动程序以及mongodb实战等pdf书籍。
2,解压mongodb.zip到任意的目录下,例如d:/mongodb
3, 在bin的同级目录新建data目录,在data下新建db目录
4,打开cmd 进入bin目录
5,输入 mongod.exe –dbpath:\mongodb\data\db 如图则证明mongodb安装启动成功。
当然不排除有一些小伙伴运气不好出现如下的错误:
这个错误比较常见,是因为每次使用mongodb后的不正常关闭引起的,解决也很简单 输入命令 mongod.exe –auth –dbpath:\mongodb\data\db –repair 后再次 输入mongod.exe –dbpath:\mongodb\data\db 就可以正常启动了,至此 mongodb启动安装完成。
mongodb的常用操作:
下面可以使用几个mongodb的常见命令来体验一下mongodb。
mongodb和sql是不同的 ,但是还是有一些相似性。
1,show databases show dbs 这两个命令都是显示所有数据库
2,mongodb中使用某一个数据库的话和sql一样 use test 代表切换到数据库test中,但是不同的是test如果不存在则会新建数据库test,这也是mongodb新建数据库的方式。
3,mongodb中没有表的概念,代替的是集合,类似于sql中的显示所有表,mongo中是显示所有集合,show collections
4,新建user表并插入数据{“name”:”wpz”,”password”:”123”} mongodb并没有在专门的建表语句,这是因为所有集合不会有固定的数据类型和关系,所以不需要单独的创建 db.user.save({“name”:”wpz”,”password”:”123”} );
这个命令就指定了新建user表,并保存{“name”:”wpz”,”password”:”123”} 对象对表中。
5,查看数据 db.user.find();这句话指明查询user中的所有信息。下一篇微博将会详细说明mongodb的语法,这里不再赘述。
二:mongodb在java中的使用。
mongodb要想在java中正常的使用需要满足两个条件即可 1,有可用的mongodb服务,本地或者远程都可以 2,代码中引入mongodb对于java的驱动包 mongo-java-driver-2.11.3.jar 没有的同学而且不想花分的也可以加群255453635 下载。
可以先使用下面mongodb的工具类来体验一下mongodb的java操作。
package www.cslc.eureka.util;import java.net.UnknownHostException;import java.sql.Date;import java.util.List;import org.junit.Test;import com.mongodb.BasicDBObject;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.DBObject;import com.mongodb.Mongo;import com.mongodb.MongoException;public class MongoManager { private final static ThreadLocal<Mongo> mongos = new ThreadLocal<Mongo>(); public static DB getdb(){ return getMongos().getDB("eureka"); } public static Mongo getMongos() { Mongo mongo = mongos.get(); if (mongo == null) { try { mongo = new Mongo("127.0.0.1",27017); mongos.set(mongo); } catch (UnknownHostException e) { e.printStackTrace(); } catch (MongoException e) { e.printStackTrace(); } } return mongo; } public static void close(){ Mongo mongo = mongos.get(); if(mongo!=null){ mongo.close(); mongos.remove(); } } /** * 获取集合(表) * * @param collection */ public static DBCollection getCollection(String collection) { return getdb().getCollection(collection); } /** * 插入 * @param collection * @param o */ public static void insert(String collection, DBObject o) { getCollection(collection).insert(o); } /** * 批量插入 * @param collection * @param list */ public void insertBatch(String collection, List<DBObject> list) { if (list == null || list.isEmpty()) { return; } getCollection(collection).insert(list); } /** * 删除 * * @param collection * @param q * 查询条件 */ public static void delete(String collection, DBObject q) { getCollection(collection).remove(q); } /** * 批量删除 * * @param collection * @param list * 删除条件列表 */ public static void deleteBatch(String collection, List<DBObject> list) { if (list == null || list.isEmpty()) { return; } for (int i = 0; i < list.size(); i++) { getCollection(collection).remove(list.get(i)); } } /** * 更新 * * @param collection * @param q * 查询条件 * @param setFields * 更新对象 */ public static void update(String collection, DBObject q, DBObject setFields) { getCollection(collection).update(q,new BasicDBObject("$set",setFields)); } /** * 查找集合所有对象 * * @param collection */ public static List<DBObject> findAll(String collection) { return getCollection(collection).find().toArray(); } /** * 按顺序查找集合所有对象 * * @param collection * 数据集 * @param orderBy * 排序 */ public static List<DBObject> findAll(String collection, DBObject orderBy) { return getCollection(collection).find().sort(orderBy) .toArray(); } /** * 查找(返回一个对象) * * @param collection * @param q * 查询条件 */ public static DBObject findOne(String collection, DBObject q) { return getCollection(collection).findOne(q); } /** * 查找(返回一个对象) * * @param collection * @param q * 查询条件 * @param fileds * 返回字段 */ public static DBObject findOne(String collection, DBObject q, DBObject fileds) { return getCollection(collection).findOne(q, fileds); } /** * 分页查找集合对象,返回特定字段 * * @param collection * @param q * 查询条件 * @param fileds * 返回字段 * @pageNo 第n页 * @perPageCount 每页记录数 */ public static List<DBObject> findLess(String collection, DBObject q, DBObject fileds, int pageNo, int perPageCount) { return getCollection(collection).find(q, fileds) .skip((pageNo - 1) * perPageCount).limit(perPageCount) .toArray(); } }
这只是一个简单的mongodb工具类,还有很多的不足,只是读者可以先体验一下mongodb的操作,之后会详细讨论。
- mongodb安装、启动及java操作
- MongoDB 安装及启动
- Mongodb安装及启动
- Linux安装mongodb及启动
- mongodb安装及简单操作
- mongodb简介、安装及操作
- mongoDB安装及CRUD操作
- mongodb win32 安装步骤 及java 简单操作
- MongoDB 启动及常用操作(随记)
- mongodb的启动及相关操作
- linux下mongodb的安装启动操作
- linux下mongodb的安装及启动
- linux下mongodb的安装及启动
- mongoDB——安装及启动
- linux下mongodb的安装及启动
- mongodb安装启动mongodb
- Mongodb安装及简单的CURD操作
- Mongodb:笔记一(安装及基本操作)
- Android Serializable Parcelable 序列化
- iOS与JS交互实战篇(ObjC版)
- css实现按钮固定在底部
- IOC和DI的通俗解释
- Spark源码系列(二)RDD详解 - 岑玉海
- mongodb安装、启动及java操作
- Oracle varchar2 长度
- Middle-题目18:53. Maximum Subarray
- linux下安装jetty
- Linux日志文件总管——logrotate
- hibernate进阶之路之一对多映射(四)
- centos安装软件命令
- Java类加载与初始化
- java与(&,&&)和或(|,||)的区别