如何创建可同时用于Redis缓存(NoSQL)和Sybase ASE(关系数据库)的单个Java域类?

时间:2019-07-16 11:49:29

标签: java redis pojo redis-cache

我们将使用Redis缓存来提高性能。我们要求我们要创建可用于Redis和Sybase ASE的单个Java域类(例如Employee.java),但问题是Redis是NoSql数据库,而Sybase ASE是关系数据库。 如果我们将Employee对象作为键值对存储在Redis中,然后又想将其从Redis缓存中提取出来而存储在数据库(Sybase ASE)中,那么它将产生问题。 简而言之,我们需要一个单一的Java域类。我们如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

例如,感谢Kryo库,只需将Employee序列化为C-String值以放入Redis。然后,您只需要从Redis反序列化它来重建Java实例并将其与Sybase一起使用(另一种方法也可以)。

可以使用将Java序列化为C-String(字节数组)或经典字符串的任何过程,因此您可以查看Jackson(从Java到Java的JSON序列化),JSON模式(生成JSON可序列化的Java类), MessagePack(带有压缩的JSON序列化),FlatBuffers ...甚至可以使用传统的Java序列化。