JFinal的RedisPlugin和JFinal-Ext的JedisPlugin

V小刚 发布于 2015/08/03 17:56
阅读 1K+
收藏 0

【深度】AI、5G时代下,算力网络与内生安全最全解析!>>>

@JFinal 你好,想跟你请教个问题:

以前一直用的Jfianl-ext的JedisPlugin,现在升级为jfinal2.0发现有了一个RedisPlugin所以就把jfinal-ext的JedisPlugin给扯了,结果运行时抛出这个异常

加载中
0
JFinal
JFinal
  LoginInterceptor 此拦截器获取 redis 中的数据以后,判断一下 null 值,对 null 做下处理即可, NullPointerException 是最容易处理的异常
JFinal
JFinal
回复 @V小刚 : 数据不兼容就需要做一下数据迁移,用原来的jfinal ext 插件将数据从原来的库中读出来,再用 jfinal 2.0 RedisPlugin 将数据写入另一个库中
JFinal
JFinal
回复 @V小刚 : jfinal 2.0 的 RedisPlugin 使用的 Fst 做的序列化,或许是 jfinal ext 用的别的方式做的序列化造成的数据不兼容
V小刚
V小刚
原因应该是JedisPlugin和RedisPlugin在对value进行序列化不一样,导致了两个插件无法兼容
V小刚
V小刚
我用RedisPlugin的get方法获取一个一直不存在的key就不会抛NullPointerException而返回一个null值。 但是用同样的方法读取一个有JedisPlugin已经写入key时就会抛出异常 不知道什么原因,你可以测试一下用jfinal-ext的JedisPlugin写一个key然后用jfinal2.0的RedisPlugin读取这个key就会抛出空指针异常
V小刚
V小刚
调用get如果key不存在会直接返回null值,为何这儿还会抛出一个NullPointerException
返回顶部
顶部