原则2 ORM和MongoDB ODM映射在同一类上
是否可以使用注释将同一类映射到ORM和ODM 我们正在决定使用什么,所以我们想做一些性能测量,我们还希望能够轻松地切换持久性映射器。我已经完成了管理者统一,现在我想统一课程。现在,我在单独的名称空间中为实体和文档创建了每个类的副本,我发现它们有点多余 我读了这篇文章,但最后我想他们使用了两个不同的类,每个类都在自己的名称空间中原则2 ORM和MongoDB ODM映射在同一类上,orm,mongodb,doctrine-orm,odm,Orm,Mongodb,Doctrine Orm,Odm,是否可以使用注释将同一类映射到ORM和ODM 我们正在决定使用什么,所以我们想做一些性能测量,我们还希望能够轻松地切换持久性映射器。我已经完成了管理者统一,现在我想统一课程。现在,我在单独的名称空间中为实体和文档创建了每个类的副本,我发现它们有点多余 我读了这篇文章,但最后我想他们使用了两个不同的类,每个类都在自己的名称空间中 有人试过吗?我从来没有试过,但完全可以将ODM和ORM映射放在完全相同的类上 问题可能取决于这两个持久性后端之间的数据同步 和实体API。例如,如果您有一个manyton
有人试过吗?我从来没有试过,但完全可以将ODM和ORM映射放在完全相同的类上 问题可能取决于这两个持久性后端之间的数据同步
和实体API。例如,如果您有一个manytone关联,ODM将有一个与ORM不同的内存内引用。因此,它可能会覆盖您使用的对象。我从未尝试过,但完全有可能将ODM和ORM映射放在完全相同的类上 问题可能取决于这两个持久性后端之间的数据同步
和实体API。例如,如果您有一个manytone关联,ODM将有一个与ORM不同的内存内引用。因此,它可能会覆盖您正在使用的对象。以前没有尝试过这一点,但是如果我可以建议您的实体/文档类使用不同的xml/yml映射?以前没有尝试过这一点,但是如果我可以建议您的实体/文档类使用不同的xml/yml映射?是的,您可以可以我已经使用symfony和注释完成了这项工作,所以我想您也可以使用您正在使用的任何环境来管理它 首先,我在实体上添加了两个注释:
<?php
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ODM\MongoDB\Mapping\Annotations as ODM;
/**
* User
*
* @ORM\Entity
* @ODM\Document
*/
class User
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ODM\Field()
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=200, nullable=false)
* @ODM\Field()
*/
private $email;
}
是的,你可以。我已经使用symfony和注释完成了这项工作,所以我想您也可以使用您正在使用的任何环境来管理它 首先,我在实体上添加了两个注释:
<?php
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ODM\MongoDB\Mapping\Annotations as ODM;
/**
* User
*
* @ORM\Entity
* @ODM\Document
*/
class User
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ODM\Field()
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=200, nullable=false)
* @ODM\Field()
*/
private $email;
}