Android编程连接MongoDB及增删改查等基本操作示例

时间:2021-05-20

本文实例讲述了Android编程连接MongoDB及增删改查等基本操作。分享给大家供大家参考,具体如下:

MongoDB简介

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

Mongo安装参考

1)下载安装包文件,解压到某一文件夹下。
官方下载地址:http://ponent in Layout. ***************/ 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"; /************** Operate Code ********************/ 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(); } /** * Function: * Find View And Set Listener. * @author Administrator * @DateTime 2014-10-29 下午1:08:50 */ 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 Name: TestActivity.java * Function: * Execute Internet Task by Async... * Modifications: * * @author Administrator * @DateTime 2014-10-29 下午1:54:34 * @version 1.0 */ 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); } } /** * Function: * Show Dialog With Text. * @author Administrator * @DateTime 2014-10-29 下午1:21:34 * @param text */ 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(); }}

4. 添加权限

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

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android数据库操作技巧总结》、《Android编程之activity操作技巧总结》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》、《Android视图View技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章