欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MongoDB支持的java數(shù)據(jù)類(lèi)型和測(cè)試?yán)?/h1>
 更新時(shí)間:2014年05月29日 09:13:34   作者:  
這篇文章主要介紹了MongoDB支持的java數(shù)據(jù)類(lèi)型和測(cè)試?yán)?MongoDB除了本身自有的數(shù)據(jù)類(lèi)型外,還為較流行的編程語(yǔ)言定制了該語(yǔ)言的數(shù)據(jù)類(lèi)型,需要的朋友可以參考下

mongodb的java數(shù)據(jù)類(lèi)型有:

Object Ids 自動(dòng)ID
Regular Expressions 正則表達(dá)式搜索記錄
Dates/Times 時(shí)間
Database References 數(shù)據(jù)基礎(chǔ)結(jié)構(gòu)
Binary Data 二進(jìn)制流
Timestamp Data 時(shí)間標(biāo)記戳
Code Data 代碼數(shù)據(jù)
Embedded Documents 嵌入式文檔
Arrays 數(shù)組類(lèi)型

詳細(xì)參考原來(lái)英文 http://docs.mongodb.org/ecosystem/drivers/java-types/

以下測(cè)試基礎(chǔ)的mongodb數(shù)據(jù)類(lèi)型。

復(fù)制代碼 代碼如下:

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 {
  //基礎(chǔ)ID,自動(dòng)增加  結(jié)構(gòu)類(lèi)似503991d90364b431cdc798e2
  ObjectId id = new ObjectId();
  System.out.println(id);

   id = new ObjectId();
   System.out.println(id);
   //5039924c0364f4a124555e42
  // 5039924c0364f4a124555e43  連續(xù)使用,自動(dòng)增加,否則隨機(jī)生成

   Mongo m = new Mongo();
   DB db = m.getDB("yuexiaosheng");
   DBCollection coll = db.getCollection("mycollection");

 
   //使用標(biāo)準(zhǔn)庫(kù)的正則表達(dá)式,可以搜索數(shù)據(jù)里記錄。類(lèi)似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中的時(shí)間類(lèi)型
   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中的數(shù)組結(jié)構(gòu)。
   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 ] }

 
   //存儲(chǔ)mongodb的數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)到數(shù)據(jù)庫(kù)里
   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);
   //插入的數(shù)據(jù)記錄
   //{ "_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

 }

}

相關(guān)文章

  • kibana中ES修改某個(gè)字段類(lèi)型問(wèn)題小結(jié)

    kibana中ES修改某個(gè)字段類(lèi)型問(wèn)題小結(jié)

    這篇文章主要介紹了kibana中ES修改某個(gè)字段類(lèi)型問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • Spring解決循環(huán)依賴(lài)問(wèn)題及三級(jí)緩存的作用

    Spring解決循環(huán)依賴(lài)問(wèn)題及三級(jí)緩存的作用

    這篇文章主要介紹了Spring解決循環(huán)依賴(lài)問(wèn)題及三級(jí)緩存的作用,所謂的三級(jí)緩存只是三個(gè)可以當(dāng)作是全局變量的Map,Spring的源碼中大量使用了這種先將數(shù)據(jù)放入容器中等使用結(jié)束再銷(xiāo)毀的代碼風(fēng)格
    2022-07-07
  • java實(shí)現(xiàn)在普通類(lèi)中注入service或mapper

    java實(shí)現(xiàn)在普通類(lèi)中注入service或mapper

    這篇文章主要介紹了java實(shí)現(xiàn)在普通類(lèi)中注入service或mapper的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java獲得一個(gè)數(shù)組的指定長(zhǎng)度排列組合算法示例

    Java獲得一個(gè)數(shù)組的指定長(zhǎng)度排列組合算法示例

    這篇文章主要介紹了Java獲得一個(gè)數(shù)組的指定長(zhǎng)度排列組合算法,結(jié)合實(shí)例形式分析了java排列組合相關(guān)數(shù)組遍歷、運(yùn)算操作技巧,需要的朋友可以參考下
    2019-06-06
  • Java8?CompletableFuture?異步多線程的實(shí)現(xiàn)

    Java8?CompletableFuture?異步多線程的實(shí)現(xiàn)

    本文主要介紹了Java8?CompletableFuture?異步多線程的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 探討:如何在NDK中呼叫Java的class

    探討:如何在NDK中呼叫Java的class

    本篇文章是對(duì)如何在NDK中呼叫Java的class進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Java實(shí)現(xiàn)可視化走迷宮小游戲的示例代碼

    Java實(shí)現(xiàn)可視化走迷宮小游戲的示例代碼

    這篇文章主要介紹了Java如何實(shí)現(xiàn)可視化走迷宮小游戲。本程序適用于java程序員鞏固類(lèi)與對(duì)象、文件讀取、事件響應(yīng)、awt包中各種工具的相關(guān)概念以及對(duì)邏輯能力的鍛煉,需要的可以參考一下
    2022-11-11
  • Maven的聚合(多模塊)和Parent繼承

    Maven的聚合(多模塊)和Parent繼承

    今天小編就為大家分享一篇關(guān)于Maven的聚合(多模塊)和Parent繼承,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Nacos配置中心設(shè)計(jì)原理分析

    Nacos配置中心設(shè)計(jì)原理分析

    今天分享一下Nacos配置變更的相關(guān)知識(shí)點(diǎn),現(xiàn)在使用Java生態(tài)如果使用微服務(wù),如果部署在K8s上,那么可能會(huì)使用ConfigMap來(lái)存儲(chǔ)配置文件,如果沒(méi)有使用K8s,那么基本上都使用Nacos來(lái)做配置中心,所以有必要了解一下Nacos的配置的知識(shí)點(diǎn),本文只是對(duì)其中的部分實(shí)現(xiàn)原理進(jìn)行分析
    2023-10-10
  • Java經(jīng)典快排思想以及快排的改進(jìn)講解

    Java經(jīng)典快排思想以及快排的改進(jìn)講解

    今天小編就為大家分享一篇關(guān)于Java經(jīng)典快排思想以及快排的改進(jìn)講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01

最新評(píng)論