PHP下ORM的基本实现
服务端编程经常需要和数据库打交道,CRUD是基本的操作。数据对象是整个操作的中心,数据库的一条记录对应着一个数据对象的信息,ORM(对象关系映射)讲的就是如何优雅的把数据对象和CRUD结合起来。这里主要实现一个通用的ORM模块。首先看系统框图:
数据库记录到对象的转换中间有一个映射器,一方面映射器对数据库执行指令,另一方面抽象出一套接口供应用程序使用。在这里所有的数据对象都继承自Object类,即万物皆对象的原则。比如现在要做一个学校信息管理系统。数据库里面可能要存几个对象信息他们的关系可以如下表示:
简单的一个继承关系图。这里还有另外一组继承关系,当查找到多个对象数据的时候,需要几个链表来方便的遍历对象信息:
也非常简单,具体的接口图上没有给出。如,构建对象的工厂类。构建查询条件的组装器等。具体可以看这个基于MongoDB实现的信息管理系统ORM。
end~