morphia(2)-添加
1、简单
@Test
public void add() throws Exception {
final Employee em = new Employee("遥远2",50000.0);
Key<Employee> key = datastore.save(em);
Console.log("主键id={},{}",key.getId(),em.getId()); }
存储:
{
"_id" : ObjectId("5bced166dd00712bd429363e"),
"className" : "com.ebc.entity.Employee",
"name" : "遥远2",
"wage" : 50000
}
2、添加子集合
@Test
public void add2() throws Exception {
Employee em = new Employee("zuoys",10000.0); final Employee e1 = new Employee("小弟1",2000.0);
datastore.save(e1);
final Employee e2 = new Employee("小弟2",3000.0);
datastore.save(e2);
//集合中的元素必须先保存
List<Employee> emList = CollUtil.newArrayList();
emList.add(e1);
emList.add(e2);
em.setDirectReports(emList); datastore.save(em);
Console.log("主键id={}",em.getId());
}
存储:
/* 1 */
{
"_id" : ObjectId("5bcef23890c1d9280c07128e"),
"className" : "com.ebc.entity.Employee",
"name" : "小弟1",
"wage" : 2000
} /* 2 */
{
"_id" : ObjectId("5bcef23890c1d9280c07128f"),
"className" : "com.ebc.entity.Employee",
"name" : "小弟2",
"wage" : 3000
} /* 3 */
{
"_id" : ObjectId("5bcef23890c1d9280c071290"),
"className" : "com.ebc.entity.Employee",
"name" : "zuoys",
"directReports" : [
{
"$ref" : "employees",
"$id" : ObjectId("5bcef23890c1d9280c07128e")
},
{
"$ref" : "employees",
"$id" : ObjectId("5bcef23890c1d9280c07128f")
}
],
"wage" : 10000
}
3、添加父
@Test
public void add3() throws Exception {
Employee em = datastore.get(Employee.class, new ObjectId("5bcef23890c1d9280c071290"));
final Employee e3 = new Employee("小弟3有父",22.0);
e3.setManager(em);
Key<Employee> key = datastore.save(e3);
Console.log("主键id={}",key.getId());
}
存储:
/* 4 */
{
"_id" : ObjectId("5bcef45d90c1d91d509941cd"),
"className" : "com.ebc.entity.Employee",
"name" : "小弟3有父",
"manager" : {
"$ref" : "employees",
"$id" : ObjectId("5bcef23890c1d9280c071290")
},
"wage" : 22
}
morphia(2)-添加的更多相关文章
- NoSQL 之 Morphia 操作 MongoDB
上两篇文章:http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html http://www.cnblogs.com/hoojo/arch ...
- MongoDB的ORM框架——Morphia
1.引入pom <dependency> <groupId>org.mongodb.morphia</groupId> <artifactId>morp ...
- Mongodb 的ORM框架 Morphia之注解
@Entity("bands") public class Band { @Id ObjectId id; String name; String genre; @Referenc ...
- mongodb使用实践---mongodb+mongo-java-driver+morphia
package com.lolaage.dals.dbfactory.mongodb; import java.net.UnknownHostException; import java.util.A ...
- 使用morphia实现对mongodb的聚合查询
morphia是谷歌的一个针对mongodb的数据化持久框架: 关于mongodb的介绍不在这里展示,直接进入主题:采用morphia实现对mongodb的聚合查询 这里获取所有学生的分数总和 spr ...
- Spring boot配置MongoDB以及Morphia踩坑记录
pom 因为项目中采用Morphia(MongoDB的ODM框架,对象-文档映射(object-document mapper)),因此需要在pom文件中引入相应依赖: <dependency& ...
- .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法
在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...
- C#给PDF文档添加文本和图片页眉
页眉常用于显示文档的附加信息,我们可以在页眉中插入文本或者图形,例如,页码.日期.公司徽标.文档标题.文件名或作者名等等.那么我们如何以编程的方式添加页眉呢?今天,这篇文章向大家分享如何使用了免费组件 ...
- html中如何添加提示信息
提示:在标签中添加title属性 1.文本中如何添加提示信息? 1.1直接在标签中加title="值": 例如:<p title="爱笑,爱哭,爱生活"& ...
随机推荐
- node.js 开发博客系统
1. 安装yoman :npm install -g yo 2. 安装 generator-express :npm install -g generator-express 3. 安装 bower ...
- codeforces 460C. Present 解题报告
题目链接:http://codeforces.com/submissions/ywindysai 题目意思:有 n 朵花,每朵花都有一定的高度(第 i 朵花对应 ai),m 天之后要把这些花送给别人. ...
- mongodb给我们提供了fsync+lock机制把数据暴力的刷到硬盘上
能不能把数据暴力的刷到硬盘上,当然是可以的,mongodb给我们提供了fsync+lock机制就能满足我们提的需求. fsync+lock首先会把缓冲区数据暴力刷入硬盘,然后给数据库一个写入锁,其他实 ...
- datagrid 行号问题综合
1.datagrid 左侧行号设置宽度 : 到 easyui.css 中修改 .datagrid-cell-rownumber 中 width 的宽度.
- 【C】貌似不友好的scanf()
scanf语句执行过程: (1)逆序取参数的偏移地址并分别入栈. (2)根据控制字符串的格式说明符从缓冲区取数据给各变量赋值. ①若格式说明符是数值类数据:如果从缓冲区中拿出的第一个字符可以合法表示该 ...
- vmware 克隆linux虚拟机后的网卡修改方法
VMware虚拟机安装好CentOS6.5系统后,纯净的系统多克隆几份出来方便后期做试验.克隆步骤很简单,克隆后出现的问题是克隆后的网卡MAC地址和原系统MAC地址一样,在局域网内会有冲突,需要更改克 ...
- Quicklz压缩算法
以前对压缩算法一无所知,只是知道哈弗曼编码能做这种事情,但是感觉这样的方法奇慢无比.昨天下午看了下号称世界上最快的压缩算法Quicklz,对压缩的基本思路有了一定的了解.一般的压缩程序的要求读入文件之 ...
- xen添加网卡
brctl addbr xenbr0 ifconfig xenbr0 up ifconfig xenbr0 192.168.0.1 /etc/xen/scripts/network-bridge st ...
- ARM、DSP、FPGA的技术特点和区别
在嵌入式开发领域,ARM是一款非常受欢迎的微处理器,其市场覆盖率极高,DSP和FPGA则是作为嵌入式开发的协处理器,协助微处理器更好的实现产品功能. 那三者的技术特点以及区别是什么呢?下文就此问题略做 ...
- Adventure Works 教程
多维建模(Adventure Works 教程) 欢迎使用 Analysis Services 教程. 本教程通过在所有示例中使用虚构公司 Adventure Works Cycles,说明如 ...