Doctrine浅析

1.使用框架操作数据库的几个需求

  1. 性能

    • ORM(Object-Relational Mapper)
      用操作类的方式操作数据库
    • 支持多种数据库
    • 支持多种第三方插件
  2. Doctrine简介

    1. 06年成立项目
    2. 代码开源,开发过程透明
    3. 良好的架构
      1. 可以独立使用
      2. 也能结合框架使用
    4. 功能强大,速度快
  3. 为何选择Doctrine

    1. 一些历史原因
    2. 获得Symfony的第三方bundle的支持
  4. Symfony2可不可以使用别的数据库操作软件

    1. Propel
    2. Zend DB
    3. 其他的(不推荐)

5.代码操作数据库demo

取得对象
	$user=$em->getRepository('User')->find(array('id'=>1))
		findOneBy()获取一条
	$user->setName('name');修改name字段值为name
	实例化数据库
	$em->presist($user);
	对比生成Updata语句
	$em->flush
一对多
	foreach($user->getAddressBooks() as $addressBook){
		$addressBooks->getName()
	}

6.Doctrine2的基本概念

  1. 实体对象-entitiy
    1. 字段
    2. 关系

  2. 对象操作集合-Repository

  3. Proxy Class

  4. DQL数据库查寻语言

    1. $query=$em->createQuery(
    	select u fromDataBundle:User p where u.name=:name
    )->setParameter('name','scourgen')
    
    2. $query2=$em->getRepository('User')->createQueryBuilder('U')
    	->where('u.name = :name')
    	->setParameter('name','scourgen')
    	->getQuery();
    

7.事件监听机制
8.进行数据库设计

  1. 实际数据库关系和主要字段
  2. 配置Symfony2数据库连接
  3. 配置Entity
  4. 生成get/set/repository
  5. 生成真实数据库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值