本人在在某项目过程中,写了一个简单的ORM。。主要实现了实体关系影射的功能。对于缓存策略等,将会再以后有时间再集成进去。由于mongo数据库本身的特性,大家都知道其collection没有列的Constraint,因此对于一些小的分类比较多的实体,可以放在一个collection中(在关系型数据库中,使用的是多张表然后通过一些标志性的字段外加必要的外键关系来实现的),例如:对于商品实体,有许多中商品,纸巾、水杯等,在数据库建模的时候可以忽略各种商品之间细节的差异(如字段不同),统一塞到一个collection中,而javabean与数据库记录之间的转化“多态”的方式进行(具体来说,在运行期间通过目前保存的映射信息来负责其中正确的转化)。但是,目前在利用反射机制遍历实体类的时候,遇到一个问题:在遍历父类完的时候,发现它不仅仅属于父类,因此还要遍历子类,此时,无法利用已经遍历过的数据(无法将父亲的数据成批的copy到儿子中,只能够重新再copy一遍),感觉这样对性能来说是一种浪费。不知道那位高手有更好的办法?
另外,在下一个版本中,肯定会将注解集成进去。