Morphia

MongoDB 对象映射框架
授权协议 Apache
开发语言 Java
所属分类 程序开发、 ORM/持久层框架
软件类型 开源软件
地区 不详
投 递 者 龙安阳
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Morphia 是一个轻量级的类型安全的 Java 类库,用来将在 MongoDB 和 Java 对象之间进行映射。

@Entity("employees")
class Employee {
  @Id ObjectId id; // auto-generated, if not set (see ObjectId)
  String firstName, lastName; // value types are automatically persisted
  Long salary = null; // only non-null values are stored 

  @Embedded Address address;

  @Reference Employee manager; // refs are stored*, and loaded automatically
  @Reference List<Employee> underlings; // interfaces are supported

  @Serialized EncryptedReviews; // stored in one binary field 
 
  @Property("started") Date startDate; //fields can be renamed
  @Property("left")Date endDate;

  @Indexed boolean active = false; //fields can be indexed for better performance
  @NotSaved string readButNotStored; //fields can read, but not saved
  @Transient int notStored; //fields can be ignored (load/save)
  transient boolean stored = true; //not @Transient, will be ignored by Serialization/GWT for example.

  //Lifecycle methods -- Pre/PostLoad, Pre/PostSave...
  @PostLoad void postLoad(DBObject dbObj) { ... }
}
  • 一、业务需求 统计实体店下【上月、本月、前日、今日】的【已下单、已接单、已完成】的订单 二、 需求分析 实时同步流程: mysql —>flinkEtl —>MongoDB 订单新增以及状态变化都会实时通知并落库到mongo中,订单流水日志表:orderStatusLog。 订单数据量庞大 需要通过门店坐标和有效距离,对数据进行筛选 订单可能被接单后取消,又被接单,所以一条订单同个状态可能会有多条

  • 项目环境:SpringBoot + SpringClound + JDK8 1.添加Morphiade的Maven依赖 <dependency> <groupId>org.mongodb.morphia</groupId> <artifactId>morphia</artifactId> <version>1.1.0</version> </de

  • 使用Morphia 下面的代码说明了如何去初始化一个Morphia的实例。使用这个实例,你可以通过Morphia去映射你的实体。 Morphia morphia = new Morphia(); // 告诉Morphia在哪里找到你的类 // 可以为不同的包或者类进行多次的调用 morphia.mapPackage("org.mongodb.morphia.example"); //创建dat

  • 1.什么是Morphia Morphia是一个开放源代码的对象关系映射框架,它对MongoDB数据库java版驱动进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵MongoDB数据库,也让Java程序员可以从复杂数据库设计中脱离出来,从而将更多的精力投入到业务逻辑中去。Morphia是一个轻量级的类型安全的Java对象to/fromMongoDB库,具有以下特征:

  • lombok标签之@Data @AllArgsConstructor @@NoArgsConstructor  https://www.cnblogs.com/aspirant/p/10298752.html   morphia Mongo Query Query<User> q = getDatastore().createQuery(User.class)//user 是个实体类 q.get(

  • 一、pom.xml中引入 <!-- https://mvnrepository.com/artifact/org.mongodb.morphia/morphia --> <dependency> <groupId>org.mongodb.morphia</groupId> <artifactId>morphia</artifactId> <version>1.3.0</ve

  • 先附上mongodb官方文档 一、mongodb聚合 1、表达式 表达式 含义 $match 数据筛选 $project 翻译为投射 ,即将一个数据结果映射为另一个结果 过程中可以对某些数据进行修改 控制其最终显示的结果 $group 分组 $sort 排序 $limit 取几条 $skip 跳过几条 $sample 随机取出n条记录 2、$match #match 用于对数据进行筛选 {"$ma

  • 我一直在尝试组合Query接口的and()和or()方法来创建一组条件,其中有2个条件列表,并且必须满足每个条件中的至少一个条件. 我读了this discussion并且一直在尝试使用Query.and()来组合我的两个$或子句. 基本上,我想说: Criteria[] arrayA; Criteria[] arrayB; // Programatically populate both arr

  • Morphia配合mongoDB喜欢Hibernate关系型数据库.也能够想到Morphia于MongoDB它调用上述的基础上,mongoDB语法. 于java直接通话Morphia的api它会变得更加简单快捷. 1.加mongoDB和Morphia的Jar包. //创建连接源 Mongo mongo = null; try { mongo = new Mongo(); } catc

 相关资料
  • 我有一个对象,我正试图映射到。现在这个有一个名为的枚举,其中包含一些值。我想使用将它们映射到中的其他枚举值。以下是我到目前为止的代码: 当我尝试编译它时,我得到了错误:

  • 我使用此链接中的以下代码为我的一个数据模型类(JSON到JAXB模型的转换)添加自定义反序列化程序。 我想使用com。fasterxml。杰克逊。jaxrs。json。JacksonJaxbJsonProvider,用于其他数据模型的JSON序列化/反序列化。 JacksonJaxbJsonProvider的默认实现非常适合我的JAXB模型,将超类作为抽象类。但是,一旦我提供了自己的自定义Obje

  • 假设我有这样的映射: 现在,我需要将子列表映射到子列表,但它们都有相同的父对象。我希望这样做: 但不管用,有机会做吗?

  • 在对象(Object,也称实体Entity)、文档(Document)之间实现自动转换,是bugu-mongo的最核心功能,这能让你直接用面向对象的概念来操作MongoDB数据库,而不用去关心底层的数据库细节。 在这方面,bugu-mongo提供了: 注解: @Entity @Id @Property @Embed @EmbedList @Ref @RefList @Ignore @CustomC

  • 我试图使用MapStruct在dto和实体对象之间映射convert,但是生成的映射器实现只返回空的映射对象。 BeermapperImpl 任何人都可以提供我的代码可能出错的地方?谢谢!

  • 主要内容:ORM框架,映射方向,映射类型对象关系映射(ORM)是一种功能,用于通过将对象状态映射到数据库列来开发和维护对象和关系数据库之间的关系。 它能够轻松处理(或执行)各种数据库操作,如插入,更新,删除等。 ORM框架 以下是在ORM机制上运行的一些框架 - Hibernate (参考:http://www.yiibai.com/hibernate ) TopLink ORMLite iBATIS JPOX 映射方向 映射方向可分为

  • 假设我有一个Foo对象列表。Foo上有一个属性,我必须使用它从数据源中获取Bar对象。然后我必须将每个bar对象映射回我得到bar的原始Foo对象。 我的尝试如下:

  • 我有以下数据结构: <代码>地图 我想从这个复杂的 Map 对象中提取它的值(它本身是另一个字符串 Map)。我目前正在这样做: 上面的实现给了我一个新的Map对象,由于外部循环,它正在迭代。似乎我错过了什么。 如何从复杂的 Map 对象中提取内部 Map 对象? 编辑: 回应AlexWien的评论 原始数据结构: 原始数据结构背后的原因是为一对id(ID1和ID2)存储一个值。ID1和ID2可以