使用JBoss Core Cache的缺点以整个Object为单位进行存储。该Object的任何一个字段发生变化都需要手动更新缓存中的Object。如果是一个状态经常发生变化的Object,那么将要频繁的进行序列化。会很影响性能。对象之间的引用关系会被序列化打破。比如一个实例A分别被实例B和实例C引用。当把B和C放入Cache以后,实例A将会为实例B和实例C分别复制一份。<br>使用JBoss POJO Cache的优点放入POJO Cache中的Object不需要实现序列化接口。只有被改变的字段被复制。对象的引用关系是受保护的。一旦Object被放入POJO Cache中,所有对该Object的改变,将自动更新到POJO Cache中。注:POJO Cache是扩展自CoreCache。因此他继承了Core Cache的所有功能。JBoss POJO Cache的特性复制机制的优化:当Cache中的POJO对象的某一个字段发生变化时,一个复制请求将被发出,这个请求中带有标识这个发生变化的字段的key。这样就不用复制整个对象,在性能上有一定提高。如果发生变化的是一个HashMap中的某一个元素。那么就只复制这个元素,而不是整个HashMap。支持事务机制:在事务没有提交之前是不会更新Cache中的数据的。钝化:当一个对象被放入Cache中,Cache将会存储所有被该对象应用的对象。Java对象的引用关系是受到保护的,当对象被放入Cache中,使用者是不需要声明对象的之间的对应关系的,比如一对一,一对多。同一个POJO对象放入到Cache中,无论从哪一个结点拿到的引用都是相同的。当一个子类POJO对象被放入到Cache中,他的父类字段也被映射了。一旦Object被放入POJO Cache中,所有对该Object的改变,将自动更新到POJO Cache中,不需要任何手动API调用。