主頁 > 知識庫 > MongoDB orm框架的注意事項及簡單使用

MongoDB orm框架的注意事項及簡單使用

熱門標簽:內蒙古營銷智能外呼系統(tǒng)哪個好 智能外呼系統(tǒng)官網 河南電話外呼系統(tǒng)招商 crm外呼系統(tǒng)聯(lián)系方式 青白江400企業(yè)電話申請 呼和浩特外呼系統(tǒng)原理是什么 長沙電銷外呼防封卡是什么 小裙科技電銷機器人怎樣 外呼線路資源屬于電信業(yè)務嗎

首先spring自帶了mongodb的orm,spring data mongodb,但是這個框架非常難用,最令人抓狂的是每個文檔都要帶一個 _class 字段,因為這個是string的,所以占用不少空間,而且去除也比較麻煩。故而使用 zfoo orm 框架

Ⅰ. 簡介

基于MongoDB的orm框架,提供POJO對象和MongoDB數(shù)據庫之間的映射

Ⅱ. 注意事項

  • POJO對象的屬性必須提供get和set方法,否則無法映射
  • 不支持泛型
  • 如果不想映射某屬性,直接加上transient關鍵字
  • 目前支持基本數(shù)據屬性(byte,short,int,long,float,double,boolean),字符串String,List,Set集合屬性的映射,不支持Map
  • 數(shù)據庫主鍵能用整數(shù)盡量用整數(shù),因為MongoDB默認的主鍵是一個字符串,比較占空間
  • 數(shù)據庫使用自研的orm框架,比如一個實體類UserEntity,映射到數(shù)據庫中的集合為user,首字母小寫,去掉Entity
  • 基于 caffeine 的高性能數(shù)據緩存
  • 語法校驗,如對沒有加上get和set的字段自動語法提示

Ⅲ. 使用方法

1. IAccessor接口,為數(shù)據訪問接口

  • 插入數(shù)據到數(shù)據庫,會以對象的id()方法的返回值作為主鍵
OrmContext.getAccessor().insert(obj)
  • 刪除數(shù)據庫中的數(shù)據,會以對象的id()方法的返回值作為查找關鍵字,刪除以這個id()為主鍵的數(shù)據
OrmContext.getAccessor().delete(obj);
  • 修改數(shù)據庫中的數(shù)據
OrmContext.getAccessor().update(obj);

2. IQuery接口,為數(shù)據復雜查詢接口

3. 緩存使用方法

例如有下列配置

orm:config id="config" entity-package="com.zfoo.orm.**.entity">

    orm:host database="test" user="" password="">
        orm:address name="server0" url="127.0.0.1:27017"/>
    /orm:host>

    !-- 緩存策略 -->
    orm:caches>
        orm:cache strategy="ten" size="10" expire-millisecond="600000"/>
        orm:cache strategy="hundred" size="100" expire-millisecond="600000"/>
        orm:cache strategy="thousand" size="1000" expire-millisecond="600000"/>
        orm:cache strategy="threeThousand" size="3000" expire-millisecond="600000"/>
        orm:cache strategy="tenThousand" size="10000" expire-millisecond="600000"/>
    /orm:caches>

    !-- 持久化策略 -->
    orm:persisters>
            orm:persister strategy="cronDefault" type="cron" config="0,30 * * * * ?"/>
            orm:persister strategy="cron3s" type="cron" config="0/3 * * * * ?"/>
            orm:persister strategy="cron15s" type="cron" config="0/15 * * * * ?"/>
            orm:persister strategy="cron30s" type="cron" config="0/30 * * * * ?"/>
            orm:persister strategy="cron1m" type="cron" config="0 0/30 * * * ?"/>
            orm:persister strategy="time30s" type="time" config="30000"/>
        /orm:persisters>
/orm:config>

有下列注解

@EntityCaches(cacheStrategy = "tenThousand", persister = @Persister("time30s"))
public class UserEntity implements IEntityLong> {
}
  • database表示操作哪個數(shù)據庫
  • address表示數(shù)據庫的地址,支持分片的配置
  • caches中的strategy表示一個緩存的策略,即將數(shù)據庫中的數(shù)據先讀入Orm中的EntityCaches緩存,如hundred這個策略表示,緩存數(shù)據庫中1000條數(shù)據,10分鐘過期
  • persisters中的strategy表示一個持久化的策略,如3s這個策略表示,將EntityCaches中的緩存數(shù)據每3s寫入到數(shù)據庫中一次,即使中途宕機,也只損失3秒的數(shù)據
  • EntityCaches這個注解表示將會被Orm管理,使用hundred策略,緩存的持久化策略為3s

Ⅳ. 教程

test下中包含了所有增刪改查的教程,運行之前請先安裝MongoDB

以上就是MongoDB orm框架的注意事項及簡單使用的詳細內容,更多關于MongoDB orm框架的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • C#基于Mongo的官方驅動手擼一個Super簡易版MongoDB-ORM框架
  • 修復 Mac brew 安裝 mongodb 報 Error: No available formula with the name ‘mongodb’ 問題詳解
  • Python利用ORM控制MongoDB(MongoEngine)的步驟全紀錄

標簽:黃石 池州 安順 呼倫貝爾 菏澤 楚雄 白山 舟山

巨人網絡通訊聲明:本文標題《MongoDB orm框架的注意事項及簡單使用》,本文關鍵詞  MongoDB,orm,框架,的,注意事項,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MongoDB orm框架的注意事項及簡單使用》相關的同類信息!
  • 本頁收集關于MongoDB orm框架的注意事項及簡單使用的相關信息資訊供網民參考!
  • 推薦文章