Java 更改JSON字段的数据类型
我是Json新手,对从客户端向服务器发送十六进制数据有疑问。目前,我的类bean设置如下:Java 更改JSON字段的数据类型,java,android,json,hex,Java,Android,Json,Hex,我是Json新手,对从客户端向服务器发送十六进制数据有疑问。目前,我的类bean设置如下: @DatabaseTable(tableName = "SIG") public class Sig { /** The id of the transaction */ @DatabaseField(generatedId = true) private Long id; /** The data associated with the signature */
@DatabaseTable(tableName = "SIG")
public class Sig {
/** The id of the transaction */
@DatabaseField(generatedId = true)
private Long id;
/** The data associated with the signature */
@DatabaseField(dataType = DataType.BYTE_ARRAY, columnDefinition = "BLOB")
private byte[] data;
public byte[] getData() {
return data;
}
public void setData(final byte[] data) {
this.data = data;
}
}
我遇到的问题是,当它通过JSON发送到服务器时,我希望“数据”字段表示为十六进制。仅将“getData()”方法更改为以下方法是否有任何限制
public String getData() {
//Code which converts data to hex
data = data.toHex();
return data;
}
将这个get方法更改为字符串会弄乱JSON吗?还是有更好的方法将其转换为十六进制 json是一个可以发送十六进制、Base64或任何内容的字符串;任何类型都将转换为字符串,因此可以将字段保留为字节数组,而只更改get方法以返回字符串吗?我认为最好的方法是在发送json时更改类型