今天使用Ehcache进行数据缓存时,出现了java.io.NotSerializableException: com.it.store.domain.Category的错误,如下图:
简单介绍一下Ehcache技术:
在java项目广泛的使用。它是一个开源的、设计于提高在数据从RDBMS中取出来的高花费、高延迟采取的一种缓存方案。正因为Ehcache具有健壮性(基于java开发)、被认证(具有apache 2.0 license)、充满特色(稍后会详细介绍),所以被用于大型复杂分布式web application的各个节点中。
解决方案: 开发过程中如果想缓存某个JavaBean,请确保它所引用的对象都implents Serializable,如果某个对象不需要被cache,可以加上transient关键字,否则Ehcache每次都通过引用查找的方法去保存所有实例数据到磁盘.最终会失败.