我使用序列化方法进行了序列化( long num = -999
)的测试。ObjectOutputStream
writeUnshared()
-999
我将源代码部署到两个不同的 weblogic 服务器:
机器1:
bea 10.3.2,Jrockit 160_14_R27.6.5-32,窗口服务器 2003
机器2:
bea 10.3.2,Jrockit 160_14_R27.6.5-32,window xp
结果是不同的:
结果1:
aced00057372000e6a6176612e6c616e672e4c6f6e673b8be490cc8f23df0200014a000576616c7565787200106a6176612e6c616e672e4e756d62657286ac951d0b94e08b020000787200106A6176612E6C616E672E4F626A65637400000000000000000000007870fffffffffffffc19
结果 2:
aced00057372000e6a6176612e6c616e672e4c6f6e673b8be490cc8f23df0200014a000576616c7565787200106a6176612e6c616e672e4e756d62657286ac951d0b94e08b0200007870fffffffffffffc19
不同的是7200106A6176612E6C616E672E4F626A656374000000000000000000000078
,等价的 ascil 转换如下:
r[0][16]java.lang.Object[0][0][0][0][0][0][0][0][0][0][0]x
r = TC_CLASSDESC
X = TC_ENDBLOCKDATA
[0][16] = length of the new class description
java.lang.object = the class being describe
我的问题是,是否有任何设置可以包含或排除以下额外字节?有什么方法可以使两个不同服务器上的测试保持一致?