2013-08-15 2 views
0

Im новое для Json и вопрос о отправке шестнадцатеричных данных от клиента к серверу. На данный момент у меня есть класс боб настроить так:Изменение типа данных поля JSON

@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 вверх? Или есть лучший способ превратить это в Hex?

ответ

0

Json - это строка, которую вы можете отправить Hex, Base64 или что-то еще; любой тип будет преобразован в String

+0

Так хорошо держать поле в виде байтового массива, но просто изменить метод get для возврата строки? – maloney

+0

Я думаю, что лучший способ - изменить тип, когда вы собираетесь отправить json – Wuilfor

Смежные вопросы