我有一个带有"令牌的XML"其中的字段,在java中它是:
@XmlElement(name = "Token", required = true)
protected byte[] token;
我使用UUID生成令牌,所以我这样做:
UUID uuid=UUID.randomUUID();
ByteBuffer bb = ByteBuffer.wrap(new byte[16]);
bb.putLong(uuid.getMostSignificantBits());
bb.putLong(uuid.getLeastSignificantBits());
byte[] token = bb.array();
myXML.setToken(token);
在XML中我得到类似的东西:
<Token>jvXrf8HvSVq23MiwSbnT+A==</Token>
我还需要将令牌发送到使用Json表示法的服务,因此在另一个函数中,我从XML对象获取令牌并将其存储在POJO中:
String sToken = Base64.encode(myXML.getToken());
myPojo.setToken(sToken);
我检查了字符串并且它是正确的,但是当我用Gson将myPojo转换为Json时:
GsonBuilder gb = new GsonBuilder()
.serializeNulls()
.setPrettyPrinting()
.setDateFormat("yyyy-MM-dd HH:mm:ss");
Gson gson = gb.create();
String json=gson.toJson(myPojo);
我在对象的json字符串表示中得到了这个:
jvXrf8HvSVq23MiwSbnT+A\u003d\u003d
与两个&#34; =&#34;翻译成&#34; \ u003d&#34;。 这很正常吗?将\ u003d代码转换为&#34; =&#34;在接收部分?
谢谢
答案 0 :(得分:0)