广告
返回顶部
首页 > 资讯 > 精选 >怎么在Android中连接MongoDB数据库
  • 407
分享到

怎么在Android中连接MongoDB数据库

androidmongodb 2023-05-30 23:05:03 407人浏览 独家记忆
摘要

怎么在Android中连接MongoDB数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。MongoDB简介mongoDB,分布式文档存储数据库,由c++语言编写,旨在为

怎么在Android中连接MongoDB数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

MongoDB简介

mongoDB分布式文档存储数据库,由c++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MonGoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发

Mongo安装参考

1)下载安装包文件,解压到某一文件夹下。
官方下载地址:Http://www.mongodb.org/downloads
2)配置环境变量:在path后添加安装路径。
3)启动Mongo数据库:
进入“cmd”->键入“mongod --dbpath D:\amp\MongoDBDATA”
D:\amp\MongoDBDATA 表示数据库文件存储路径
4)启动Mongo客户端:
mongo 127.0.0.1:27017/admin

Android 连接MongoDB

步骤1:下载并导入jar包到工程
步骤2:安装MongoDB到PC端(参见MongoDB安装)
步骤3:编写代码连接MongoDB实现简单操作(增删改查)

代码参考(Android端,也适用于java等工程)

  MongoDBUtil.java

package com.hills.happytest.utils;import java.util.List;import org.bson.types.ObjectId;import com.mongodb.BasicDBObject;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.DBCursor;import com.mongodb.DBObject;import com.mongodb.Mongo;public class MongoDBUtil {  static Mongo connection = null;  static DB db = null;  public MongoDBUtil(String dbName) throws Exception  {    connection = new Mongo("10.0.2.2:27017");    db = connection.getDB(dbName);  }  public static Mongo getConnection() {    return connection;  }    public void createCollection(String collName)  {    DBObject dbs = new BasicDBObject();    dbs.put("test", "test");    db.createCollection(collName, dbs);  }    public void insert(DBObject dbObject,String collName)  {    DBCollection collection = db.getCollection(collName);    collection.insert(dbObject);  }    public void insertBatch(List<DBObject> dbObjects,String collName)  {    DBCollection collection = db.getCollection(collName);    collection.insert(dbObjects);  }    public int deleteById(String id,String collName)  {    DBCollection collection = db.getCollection(collName);    DBObject dbs = new BasicDBObject("_id", new ObjectId(id));    int counts = collection.remove(dbs).getN();    return counts;  }    public int deleteByDbs(DBObject dbObject,String collName)  {    DBCollection collection = db.getCollection(collName);    int count = collection.remove(dbObject).getN();    return count;  }    public int update(DBObject find,DBObject update,boolean upsert,boolean multi,String collName)  {    DBCollection collection = db.getCollection(collName);    int count = collection.update(find, update, upsert, multi).getN();    return count;  }    public DBCursor findWithPage(DBObject where,DBObject selection,int start,int limit,String collName)  {    DBCursor cursor = findNoPage(where, selection, collName);    return cursor.limit(limit).skip(start);  }    public DBCursor findNoPage(DBObject where,DBObject selection,String collName)  {    DBCollection collection = db.getCollection(collName);    DBCursor cursor = collection.find(where, selection);    return cursor;  }}

MongoDBDao.java

package com.hills.happytest.utils;import java.util.ArrayList;import java.util.List;import com.mongodb.BasicDBObject;import com.mongodb.DBCursor;import com.mongodb.DBObject;public class MongoDBDao {  private static MongoDBUtil mongoDb;  // Init. MongoDBUtil.  static{    try {      mongoDb = new MongoDBUtil("test");    } catch (Exception e) {      e.printStackTrace();    }  }    public void createCollectionTest(String collName)  {    mongoDb.createCollection(collName);  }    public void insertTest(String collName)  {    DBObject dbs = new BasicDBObject();    dbs.put("name", "gymyung");    dbs.put("age", 20);    List<String> books = new ArrayList<String>();    books.add("EXTjs");    books.add("MONGDB");    books.add("JAVA");    dbs.put("books", books);    mongoDb.insert(dbs, collName);  }    public void insertBatchTest(String collName)  {    List<DBObject> dbObjects = new ArrayList<DBObject>();    DBObject jim2 = new BasicDBObject("name", "jim2");    DBObject liuting = new BasicDBObject();    liuting.put("name", "liuting");    liuting.put("age", "22");    dbObjects.add(jim2);    dbObjects.add(liuting);    mongoDb.insertBatch(dbObjects, collName);  }    public int deleteByIdTest(String collName)  {    int counts = mongoDb.deleteById("54507d19cbbd7a385c129ef5", collName);    return counts;  }    public int deleteByDbsTest(String collName)  {    DBObject jim2 = new BasicDBObject("name", "jim2");    int count = mongoDb.deleteByDbs(jim2, collName);    return count;  }    public int updateTest(String collName)  {    DBObject liuting = new BasicDBObject();    DBObject liuting2 = new BasicDBObject();    liuting2.put("$set", new BasicDBObject("gender", "female"));    int count = mongoDb.update(liuting, liuting2, false, true, collName);    return count;  }    public List<String> findWithPageTest(String collName)  {    DBCursor cursor = mongoDb.findWithPage(null, null, 0, 3, collName);    return convertCursorToList(cursor);  }    public List<String> findWithConditionTest(String collName)  {    DBObject where = new BasicDBObject();    where.put("age", new BasicDBObject("$lte", 26));    where.put("gender", "female");    DBCursor cursor = mongoDb.findNoPage(where, null,collName);    return convertCursorToList(cursor);  }    public List<String> findNoPageTest(String collName)  {    DBObject keys = new BasicDBObject();    keys.put("_id", false);    keys.put("name", true);    keys.put("age", true);    DBCursor cursor = mongoDb.findNoPage(null, keys, collName);    return convertCursorToList(cursor);  }    private List<String> convertCursorToList(DBCursor cursor)  {    List<String> results = new ArrayList<String>();    while(cursor.hasNext())    {      DBObject dbObject = cursor.next();      for(String key : dbObject.keySet())      {        results.add("{"+key+":"+dbObject.get(key)+"}");      }    }    return results;  }}

TestActivity.java

package com.hills.happytest;import java.util.List;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.AsyncTask;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import com.hills.happytest.utils.MongoDBDao;import com.hills.happytest.utils.MongoDBUtil;public class TestActivity extends Activity implements OnClickListener{    private Button mongoTestBtn1;  private Button mongoTestBtn2;  private Button mongoTestBtn3;  private Button mongoTestBtn4;  private Button mongoTestBtn5;  private Button mongoTestBtn6;  private Button mongoTestBtn7;  private Button mongoTestBtn8;  // The Object use to MongoDB Operate.  private MongoDBDao mongoDbDao;  // The Collection Name in MongoDB.  private String collName = "androidDB";    private final int CREATE_COLLECTION_TEST = 100;  private final int INSERT_TEST = 101;  private final int INSERT_BATCH_TEST = 102;  private final int DELETE_BY_ID_TEST = 103;  private final int DELETE_BY_DBS_TEST = 104;  private final int UPDATE_TEST = 105;  private final int FIND_WITH_PAGE_TEST = 106;  private final int FIND_NOPAGE_TEST = 107;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.mongodb_test);    findViewAndSetListener();    mongoDbDao = new MongoDBDao();  }    private void findViewAndSetListener() {    mongoTestBtn1 = (Button) findViewById(R.id.mongodb_btn1);    mongoTestBtn2 = (Button) findViewById(R.id.mongodb_btn2);    mongoTestBtn3 = (Button) findViewById(R.id.mongodb_btn3);    mongoTestBtn4 = (Button) findViewById(R.id.mongodb_btn4);    mongoTestBtn5 = (Button) findViewById(R.id.mongodb_btn5);    mongoTestBtn6 = (Button) findViewById(R.id.mongodb_btn6);    mongoTestBtn7 = (Button) findViewById(R.id.mongodb_btn7);    mongoTestBtn8 = (Button) findViewById(R.id.mongodb_btn8);    mongoTestBtn1.setOnClickListener(this);    mongoTestBtn2.setOnClickListener(this);    mongoTestBtn3.setOnClickListener(this);    mongoTestBtn4.setOnClickListener(this);    mongoTestBtn5.setOnClickListener(this);    mongoTestBtn6.setOnClickListener(this);    mongoTestBtn7.setOnClickListener(this);    mongoTestBtn8.setOnClickListener(this);  }  @Override  public void onClick(View v) {    MyAsyncTast myAsyncTast = new MyAsyncTast();    switch(v.getId()){    case R.id.mongodb_btn1:      myAsyncTast.execute(CREATE_COLLECTION_TEST);      break;    case R.id.mongodb_btn2:      myAsyncTast.execute(INSERT_TEST);      break;    case R.id.mongodb_btn3:      myAsyncTast.execute(INSERT_BATCH_TEST);      break;    case R.id.mongodb_btn4:      myAsyncTast.execute(DELETE_BY_ID_TEST);      break;    case R.id.mongodb_btn5:      myAsyncTast.execute(DELETE_BY_DBS_TEST);      break;    case R.id.mongodb_btn6:      myAsyncTast.execute(UPDATE_TEST);      break;    case R.id.mongodb_btn7:      myAsyncTast.execute(FIND_WITH_PAGE_TEST);      break;    case R.id.mongodb_btn8:      myAsyncTast.execute(FIND_NOPAGE_TEST);      break;    }  }    class MyAsyncTast extends AsyncTask<Object, Object, Object>{    @Override    protected Object doInBackground(Object... params) {      Object result = null;      switch(Integer.parseInt(params[0].toString()))      {        case CREATE_COLLECTION_TEST:          mongoDbDao.createCollectionTest(collName);          break;        case INSERT_TEST:          mongoDbDao.insertTest(collName);          break;        case INSERT_BATCH_TEST:          mongoDbDao.insertBatchTest(collName);          break;        case DELETE_BY_ID_TEST:          result = mongoDbDao.deleteByIdTest(collName);          break;        case DELETE_BY_DBS_TEST:          result = mongoDbDao.deleteByDbsTest(collName);          break;        case UPDATE_TEST:          result = mongoDbDao.updateTest(collName);          break;        case FIND_WITH_PAGE_TEST:          result = mongoDbDao.findWithPageTest(collName);          break;        case FIND_NOPAGE_TEST:          result = mongoDbDao.findNoPageTest(collName);          break;      }      return result;    }    @SuppressWarnings("unchecked")    @Override    protected void onPostExecute(Object result) {      if(result instanceof Integer)      {        showDialogWithText("操作结果码:"+result.toString());      }else if(result instanceof List)      {        String resText = "";        for(String res : ((List<String>) result))        {          resText += res + "\n";        }        showDialogWithText("操作结果\n:"+resText);      }      super.onPostExecute(result);    }  }    private void showDialogWithText(String text)  {    AlertDialog.Builder builder = new AlertDialog.Builder(this);    builder.setIcon(R.drawable.ic_launcher);    builder.setTitle("MongoDB操作结果");    builder.setMessage(text);    builder.setNeutralButton("确定", new DialogInterface.OnClickListener()    {      @Override      public void onClick(DialogInterface dialog, int which)      {        dialog.dismiss();      }    });    builder.create().show();  }  @Override  protected void onDestroy() {    // Close MongoDB Connection If It is Not Null.    if(MongoDBUtil.getConnection() != null)    {      MongoDBUtil.getConnection().close();    }    super.onDestroy();  }}

  添加权限

<uses-permission Android:name="android.permission.INTERNET"/>

关于怎么在Android中连接MongoDB数据库问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网精选频道了解更多相关知识。

--结束END--

本文标题: 怎么在Android中连接MongoDB数据库

本文链接: https://www.lsjlt.com/news/222243.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么在Android中连接MongoDB数据库
    怎么在Android中连接MongoDB数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。MongoDB简介Mongodb,分布式文档存储数据库,由C++语言编写,旨在为...
    99+
    2023-05-30
    android mongodb
  • node.js中怎么连接MongoDB数据库
    今天就跟大家聊聊有关node.js中怎么连接MongoDB数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、通过client对象连接到Mong...
    99+
    2022-10-19
  • Android中怎么连接数据库
    这篇文章给大家介绍Android中怎么连接数据库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。问题:用Eclipse开发android,怎么连接到数据库,主要是连接到公司网站上的服务器...
    99+
    2022-10-18
  • mongodb怎么关闭数据库连接
    在MongoDB中关闭数据库连接有两种方法。方法一:使用`db.logout()`命令来关闭连接。这会注销当前用户并关闭连接。```...
    99+
    2023-09-06
    mongodb 数据库
  • android studio怎么连接数据库
    要在Android Studio中连接数据库,你需要使用以下步骤:1. 在你的项目中添加数据库依赖。在你的app级别的build.g...
    99+
    2023-09-28
    android 数据库
  • 云数据库MongoDB 连接MongoDB实例
    要连接云数据库MongoDB实例,您可以按照以下步骤进行操作:1. 登录到云数据库MongoDB控制台。2. 在左侧导航栏中,选择“...
    99+
    2023-09-21
    数据库
  • python怎么连接mongodb查数据
    要在Python中连接到MongoDB并查询数据,你需要安装pymongo库,它是MongoDB官方提供的Python驱动程序。你可...
    99+
    2023-08-30
    python mongodb
  • Python连接MongoDB数据库并执
    环境设置:[root@mongodb ~]# cat /etc/redhat-release  CentOS release 6.9 (Final) [root@mongodb ~]# python -V Python 2.6.61.首先确...
    99+
    2023-01-31
    数据库 Python MongoDB
  • 怎么在plsql中连接oracle数据库
    这篇文章将为大家详细讲解有关怎么在plsql中连接oracle数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步:先安装plsql客户端,plsql...
    99+
    2022-10-18
  • 怎么在IDEA中连接Navicat数据库
    怎么在IDEA中连接Navicat数据库?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。(一)配置环境变量①我的电脑右键选择属性→高级系统设置→环境变量→新建→输入变量名MYSQ...
    99+
    2023-06-14
  • 怎么在python中连接mysql数据库
    这期内容当中小编将会给大家带来有关怎么在python中连接mysql数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;...
    99+
    2023-06-14
  • 怎么在PHP中关闭数据库连接
    这篇文章主要讲解了“怎么在PHP中关闭数据库连接”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在PHP中关闭数据库连接”吧!PHP与MySQL数据库交互在PHP中,我们可以使用许多不同的...
    99+
    2023-07-05
  • mongodb数据库连接的步骤是什么
    连接到MongoDB数据库的步骤如下:1. 安装MongoDB:从MongoDB官方网站下载并安装MongoDB的最新版本。2. 启...
    99+
    2023-08-31
    mongodb数据库
  • golang连接MongoDB数据库及数据库操作指南
    目录安装配置MongoDB驱动导入驱动获得数据库连接数据库操作添加文档查找文档更新文档删除文档总结安装配置MongoDB驱动 安装驱动 go get -u github.com/mongodb/mongo-go-driv...
    99+
    2022-09-07
  • node中如何使用Nest.js连接MongoDB数据库
    node中如何使用Nest.js连接MongoDB数据库,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在学习 Nest 与数据库进行连接时...
    99+
    2022-10-19
  • Flex中怎么连接数据库
    今天就跟大家聊聊有关Flex中怎么连接数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Flex连接数据库的方法Flex应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型...
    99+
    2023-06-17
  • VB.NET中怎么连接数据库
    VB.NET中怎么连接数据库,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Microsoft Visual Basic.NET 是Microsoft Visua...
    99+
    2023-06-17
  • 怎么在Oracle中使用sqlplus连接数据库
    怎么在Oracle中使用sqlplus连接数据库?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。方式1(本机): / as sysdba在ora...
    99+
    2022-10-18
  • 怎么在Java中使用JDBC连接数据库
    本篇文章给大家分享的是有关怎么在Java中使用JDBC连接数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、使用JDBC连接数据库1.使用JDBC-ODBC桥驱动程序连接...
    99+
    2023-06-06
  • 怎么在SpringBoot中实现多数据库连接
    怎么在SpringBoot中实现多数据库连接?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。主要使用两个不同的数据库,分别为:mysql(springboot)【primar...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作