Doctrine JSON ODM 使用教程
1. 项目的目录结构及介绍
Doctrine JSON ODM 是一个用于 Doctrine ORM 的对象文档映射器,使用现代 RDBMS 的 JSON 类型。项目的目录结构如下:
doctrine-json-odm/
├── src/
│ ├── Annotation/
│ ├── Bridge/
│ ├── Serializer/
│ ├── Type/
│ ├── DoctrineJsonOdmBundle.php
│ └── ...
├── tests/
├── composer.json
├── README.md
└── ...
src/
:包含项目的主要源代码,包括注解、桥接、序列化器和类型等。tests/
:包含项目的测试代码。composer.json
:Composer 配置文件,定义了项目的依赖关系。README.md
:项目的介绍文档。
2. 项目的启动文件介绍
项目的启动文件主要是 DoctrineJsonOdmBundle.php
,位于 src/
目录下。这个文件是 Symfony 包的入口点,负责注册和配置 Doctrine JSON ODM 服务。
// src/DoctrineJsonOdmBundle.php
namespace Dunglas\DoctrineJsonOdm;
use Symfony\Component\HttpKernel\Bundle\Bundle;
class DoctrineJsonOdmBundle extends Bundle
{
// 包的实现
}
3. 项目的配置文件介绍
项目的配置文件主要是 composer.json
和 Symfony 的配置文件。
composer.json
composer.json
文件定义了项目的依赖关系和其他元数据。
{
"name": "dunglas/doctrine-json-odm",
"description": "An object document mapper for Doctrine ORM using JSON types of modern RDBMS",
"require": {
"php": "^7.2.5 || ^8.0",
"doctrine/orm": "^2.5",
"symfony/serializer": "^5.0"
},
"autoload": {
"psr-4": {
"Dunglas\\DoctrineJsonOdm\\": "src/"
}
}
}
Symfony 配置文件
在 Symfony 项目中,你需要在 config/bundles.php
中注册包:
// config/bundles.php
return [
// ...
Dunglas\DoctrineJsonOdm\DoctrineJsonOdmBundle::class => ['all' => true],
];
此外,你还需要创建一个配置文件 config/packages/doctrine-json-odm.yaml
:
# config/packages/doctrine-json-odm.yaml
doctrine_json_odm:
mapping:
paths:
- '%kernel.project_dir%/src/ODM'
这个配置文件指定了 ODM 实体的根路径。