Compass 交流
|
meimer
2007-08-06
最近在学习compass,有一点认识也有一点迷糊?想和大家交流一下。
compass 封装了spring和hibernate,对于事务的管理和支持清晰可见,可是封装了hibernate,我却突然间不会用hibernate了,不知道如何使用它封装后的hibernate进行数据库操作了,虽然CompassGps 允许装载多个Device,并且允许多个设备并发运行,可是装载的时候感觉又回到了原始的hiberna状态:如下代码: CompassGps gps = new SingleCompassGps(compass); CompassGpsDevice hibernateDevice =new Hibernate3GpsDevice ("hibernate", sessionFactory); gps.addGpsDevice(hibernateDevice); gps.start(); 如果上面的sessionFactory是来自hibernate,那么封装的意义何在?我们又如何使用这个device 进行数据库操作呢? 原来以为这段代码既会更改索引,又会操作数据库, ApplicationContext context = IOC.getContext(); Compass compass = (Compass) context.getBean("compass"); CompassSession session = compass.openSession(); CompassTransaction ct = session.beginTransaction(); Article ar=new Article(); ar.setArticleId(4); ar.setArticleTitle("简化asdf"); ar.setContent("jslakdj沃尔特flhdf"); ar.setKeyList("afsdkfj沃尔特 沃软巍峨巍峨k"); session.save(ar); ct.commit(); 结果他只是根据对象生成了索引而已,并没有将数据插入数据库,真是得,难道搜索引擎就可以完全抛弃关系数据库吗? 希望那位高手能够仔细解释一下?compass为什么要装载device,以及装载之后如何使用?特别是对关系数据库的操作? |

