DAO映射

上诉DAO都需要写PHP文件,框架这边也提供了一个简易版的映射方式

用户可在/config/database.php中配置,示例如下

  1. // database.php
  2. return array(
  3. 'dbConfig' => array(
  4. // 相当于创建了一个testDAO.php
  5. 'test' => 'Biny_Test'
  6. )
  7. );

然后就可以在Action、Service、Model各层中使用testDAO

  1. // testAction.php
  2. namespace app\controller;
  3. /**
  4. * DAO 或者 Service 会自动映射 生成对应类的单例
  5. * @property \biny\lib\SingleDAO $testDAO
  6. */
  7. class testAction extends baseAction
  8. {
  9. public function action_index()
  10. {
  11. // 此处的testDAO为映射生成的,没有baseDAO中对于缓存的操作
  12. [['id'=>1, 'name'=>'xx', 'type'=>2], ['id'=>2, 'name'=>'yy', 'type'=>3]]
  13. $data = $this->testDAO->query();
  14. }
  15. }

需要注意的是,映射的DAO不具备设置数据库功能(主从库都是默认的database配置)

也不具备缓存操作(getByPK、updateByPK、deleteByPK等)的功能

如果需要使用上述功能,还是需要在dao目录下创建php文件自定义相关参数