在<设想使用xml与关系数据库形成一个对象数据库>一文中,已经阐述了关系数据库与对象数据库的主要区别:对外键的使用是通过直接记录,还是遍历外键子表来获得.而这里,是面对另一个重要的区别:如何释放对象的资源.对于对象数据库而言,它等同于是一批直接存于数据库中的串行化对象,它的实际存储形式到底是不是按关系结构存储并不是最重要的,重要的是调用程序读入内存的就是一个对象,而不是游标映射;这样,使用对象数据库就必须存在着一个如何清除用完的对象资源的问题;同时由于对象数据库必然是与语言无关的,因此对象释放也就必然只能由程序调用方完成. 【推荐阅读:首款JAVA即时通讯软件,中国人要做垮平】
原载:
xml可以看作是一个串行化的可以在不同的语言与平台间交换的对象结构,它实际上也存在同样的需要:假如不是把xml简单看作是html那样的presentation layer的样式,而是对象存储的形式,那么读入xml对象后也必然存在着重载与维护的问题,而且,要令程序高效,就必须是由程序容器完成,而不应由bean来维护.否则减少程序量提供软件质量就无从谈起了.通过程序容器产生下个共用线程,对已经不再使用的对象清空,空出资源.实际上,j2ee的实体bean容器就是这样一种容器,只不过,它是通过or映射的形式,希望反映出数据库中复杂的对象实体关系.对象数据库可以令这种映射简化到基本上是单表的形式,如果它能象j2ee一样一定程度上维护内存对象,最重要的就是清空内存占用,就可以达到比实体bean更佳的效果. j2ee实体bean基本上是扁平的对象关系,实体bean之间不存在互相包融的关系,这令它并不能很方便地反映到实际应用的关系中.而现实使用中,对象结构更接近于是一个继承树式的关系.在这种结构中,没有必要对所有对象都由容器处理它的清除.... 下一页