当前位置: 移动技术网 > IT编程>开发语言>Java > MongoDB支持的java数据类型和测试例子

MongoDB支持的java数据类型和测试例子

2019年07月22日  | 移动技术网IT编程  | 我要评论

邰智源模仿李春姬,xiadaomiji,普通话等级考试教材

mongodb的java数据类型有:

object ids 自动id
regular expressions 正则表达式搜索记录
dates/times 时间
database references 数据基础结构
binary data 二进制流
timestamp data 时间标记戳
code data 代码数据
embedded documents 嵌入式文档
arrays 数组类型

详细参考原来英文 http://docs.mongodb.org/ecosystem/drivers/java-types/

以下测试基础的mongodb数据类型。

复制代码 代码如下:

package com.javaer.mongo;

import java.net.unknownhostexception;
import java.util.arraylist;
import java.util.date;
import java.util.regex.pattern;

import org.bson.types.objectid;

import com.mongodb.basicdbobject;
import com.mongodb.basicdbobjectbuilder;
import com.mongodb.db;
import com.mongodb.dbcollection;
import com.mongodb.dbcursor;
import com.mongodb.dbobject;
import com.mongodb.dbref;
import com.mongodb.mongo;

public class javatypes {

 /**
  * @param args
  * @throws unknownhostexception
  */
 public static void main(string[] args) throws unknownhostexception {
  //基础id,自动增加  结构类似503991d90364b431cdc798e2
  objectid id = new objectid();
  system.out.println(id);

   id = new objectid();
   system.out.println(id);
   //5039924c0364f4a124555e42
  // 5039924c0364f4a124555e43  连续使用,自动增加,否则随机生成

   mongo m = new mongo();
   db db = m.getdb("yuexiaosheng");
   dbcollection coll = db.getcollection("mycollection");

 
   //使用标准库的正则表达式,可以搜索数据里记录。类似mysql中条件 where title like '%name%'
   pattern john = pattern.compile(".*?jack*.?",pattern.case_insensitive);
   basicdbobject query = new basicdbobject("title", john);

   dbcursor cursor = coll.find(query);
   try {
             while(cursor.hasnext()) {
                 system.out.println(cursor.next());
             }
         } finally {
             cursor.close();
         }

   //mongodb中的时间类型
   date now = new date();
   basicdbobject time = new basicdbobject("ts", now);
   coll.save(time);
  //插入的记录 { "_id" : objectid("503993b20364129f6625d349"), "ts" : isodate("2012-08-26t03:10:42.146z") }

   //mongodb中的数组结构。
   arraylist x = new arraylist();
   x.add(1);
   x.add(2);
   x.add(new basicdbobject("foo", "bar"));
   x.add(4);

   basicdbobject doc = new basicdbobject("x", x);
   coll.save(doc);
   //插入的记录  { "_id" : objectid("503994500364bf9957b271a6"), "x" : [ 1, 2, { "foo" : "bar" }, 4 ] }

 
   //存储mongodb的数据结构数据到数据库里
   dbref addressref = new dbref(db, "foo.bar", id);
   dbobject address = addressref.fetch();

   dbobject person = basicdbobjectbuilder.start()
       .add("name", "fred")
       .add("address", addressref)
       .get();
   coll.save(person);
   //插入的数据记录
   //{ "_id" : objectid("503995390364fcf1b54905b2"), "name" : "fred", "address" : { "$ref" : "foo.bar", "$id" : objectid("503995390364fcf1b54905af") } }

   dbobject fred = coll.findone();

   dbref addressobj = (dbref)fred.get("address");
   system.out.println(addressobj);
   // { "$ref" : "foo.bar", "$id" : "5039965c03648efcd6281311

 }

}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网