mongodb-orm简介
Mongodb ORM是基于java的ORM框架,可以简化SDK的使用,使代码更加清晰和简单。 与Ibatis一样,将查询、执行语句封装到xml中,与代码隔离。 简称为MQL。加入
项目中使用
MongoDBORM的支持包1 .添加jar包或maven支持从属项
groupIdcom.mongodborm/groupId
artifactidmongodb-ORM/artifact id
版本0.0.1 -版本/版本
/从属关系
在MongoDB模板spring中初始化
bean id=' mongo模板'类=' com.MongoDB.client.mongoclienttemplet '
属性名称='工厂'
bean类=' com.MongoDB.client.mongoormfactorybean '
属性名称='数据源'
bean类=' com.MongoDB.client.mongo数据源'
属性名称='节点值=' 127.0.0.1336027017 ' /
属性名称=' dbname ' value=' your dbname ' /
属性名称='用户名'值='用户名' /
属性名称='密码'值='密码' /! - -默认值--- -属性名称='连接主机值' /
属性名称=' threadsallowedtoblock ' value=' /
属性名称='连接时间输出'值=' /
属性名称=' maxretrytime ' value=' /
属性名称='套接字时间输出'值=' /
/bean
/属性
属性名称='配置位置'
列表
值类路径: mql/mongo-mql.XML /值
/list
/属性
/bean
/属性
/bean
代码初始化
特里
资源资源=新闻空间资源(mongo-mql.XML );
mongoormfactorybeanfactory=newmongoormfactorybean (;
factory.set配置位置(新建资源[ ] {资源} );
factory.init (;
mongoclienttemplettemplet=newmongoclienttemplet (;
模板安全;
templet.init (;
缓存(执行) {
e .打印堆栈跟踪(;
}
创建MQL
mappingmappingid='模型'类=' test.MongoDB ORM .模型'
属性列=' _ id '名称=' id ' /
属性列='名称'名称='名称' /
属性列='时间'名称='时间'值='0' /
属性列='状态'名称='状态' /
/mapping
mapping id='扩展模型'类=' test.MongoDB ORM .模型'扩展='模型'
属性列='新属性'名称='新属性' /
/mapping
选择选择id=' querymodellist ' collection='测试_示例'
查询类=' Java.lang.string '
属性列='名称'名称=' $ { value } /
/query
场映射='模型' /
订单
属性列='时间值='桌面' /
/订单
/选择
更新/findandmodifyupdateid='更新模型'集合='测试_样本'
查询类=' test.MongoDB ORM .模型$儿童'
属性列='名称'名称='名称'忽略空值='真' /
属性列=' time '操作=' GTE ' value='0' type='编号' /
属性列='状态'操作='输入'
listtype='编号0 ' 0,1 /列表
/属性
/query
操作类=' Java.util.map '
属性列='名称'名称='名称'操作='设置' /
属性列='状态'操作='设置' /
/动作
/更新
存在嵌套查询选择id=' querymodellist3' collection='测试_示例'
查询类=' Java.lang.string '
属性列=' _ id '值=' $ {值} ' /
属性列='时间'值='0'类型='编号' /
/query
场类=' Java.util.map '
属性列='名称'名称='名称' /
属性列=' parent ' name=' parent ' '
值类=' test.MongoDB ORM.model $ parent '
属性列='名称'名称='名称' /
property column='强刺猬' name='强刺猬'
值类=' test.MongoDB ORM .模型$儿童'
属性列='名称'名称='名称' /
属性列='时间'名称='时间'值='0' /
/值
/属性
属性列='数据名称='数据'
值类=' Java.util.map '
属性列='标题'名称='标题' /
属性列='内容'名称='内容' /
/值
/属性
/值
/属性
属性列='数据名称='数据'
值类=' Java.util.map '
属性列='标题'名称='标题' /
属性列='内容'名称='内容' /
/值
/属性
/字段
订单类=' Java.util.map '
属性列=“时间”名称=“时间”值=“桌面”/
/订单
/选择
模板的使用方法
model model=mongo templet.find one (' querymodellist ',' yuxiangping ' );
listmodellist=mongo templet.find one (' querymodellist ','');
模型模型=新模型(;
模型.设定(1l;
字符串,字符串操作=新的hashmap字符串,字符串(;
action.put('name ',' yuxiangping-update );
int更新=mongo templet.update (更新模型、模型、操作);