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