gpt4 book ai didi

java - 有没有办法通过python反序列化java对象

转载 作者:行者123 更新时间:2023-11-30 07:57:58 27 4
gpt4 key购买 nike

我将 java 对象存储在 hbase 中(即)假设我有一个带有 3 个参数的对象“用户”,例如名字、中间名和姓氏。我在 java 中使用了以下代码进行序列化

Object object = (object) user;    
byte[] byteData = SerializationUtils.serialize((Serializable) object);

并存储在 hbase 中,就像“在 KeyValue 对的 Value 部分存储完整的对象(以上面的 byte[] 格式)”

它像(示例)一样存储在 hbase 中

列=容器:容器,时间戳=1480016194005,值=\xAC\xED\x00\x05sr\x00&com.test.container\x07\x89\x83\xFA\x7F\xD0F\xA5\x02\x00\x08I\x00\x07classIdJ\x00\x14dateTimeInLongFormatZ\x00\x04rootZ\x00\x09undefinedL\x00\x03keyt\x00\x12Ljava/lang/String;L\x00\x04modeq\x00~\x00\x01L\x00\x04nameq\x00~\x00\x01L\x00\x06userIdq\x00~\x00\x01xp\x00\x00\x00\x02\x00\x00\x01X\x967\xBA\xF0\x00\x00t\x00\x1Econtainer_393_5639181044834024t\x00\x00x06expandt02\x08testadmin

当我尝试检索数据时,我在 java 中使用了以下反序列化并转换回可读格式的对象

object = SerializationUtils.deserialize(bytes);

I would like to retrieve the data stored in java format via happybase using python and I achieved it and received the data as available in hbase like

它像(示例)一样存储在 hbase 中

列=容器:容器,时间戳=1480016194005,值=\xAC\xED\x00\x05sr\x00&com.test.container\x07\x89\x83\xFA\x7F\xD0F\xA5\x02\x00\x08I\x00\x07classIdJ\x00\x14dateTimeInLongFormatZ\x00\x04rootZ\x00\x09undefinedL\x00\x03keyt\x00\x12Ljava/lang/String;L\x00\x04modeq\x00~\x00\x01L\x00\x04nameq\x00~\x00\x01L\x00\x06userIdq\x00~\x00\x01xp\x00\x00\x00\x02\x00\x00\x01X\x967\xBA\xF0\x00\x00t\x00\x1Econtainer_393_5639181044834024t\x00\x00x06expandt02\x08testadmin

有没有办法通过python反序列化java对象

非常感谢

哈里

最佳答案

为此有一个 Python 库:

https://pypi.python.org/pypi/javaobj-py3/

用法看起来很简单:

import javaobj
jobj = self.read_file("obj5.ser")
pobj = javaobj.loads(jobj)
print(pobj)

关于java - 有没有办法通过python反序列化java对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40809062/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com