Установленный байтовый массив xmemcached

Я использую xmemcached, чтобы написать memcacheclient. Теперь я хочу иметь такой метод: set(key, byte[]) и get(key) return byte[] в клиенте memcache. Любой может предложить мне что-нибудь сделать в XMEMCACHED. В моем случае я использую буфер протокола для последовательных / десериальных объектов, затем сохраняю их в Memcache. Спасибо.

2 ответа

Чтобы получить значение byte[] с помощью XMemcached, я реализовал свой собственный транскодер:

public class ByteArrayTranscoder implements net.rubyeye.xmemcached.transcoders.Transcoder<byte[]>
{

    @Override
    public byte[] decode(CachedData d)
    {
        return d.getData();
    }
    @Override
    public CachedData encode(byte[] o)
    {
        throw new UnsupportedOperationException();
    }
    // UnsupportedOperationException for all other methods
}

Использование:

byte[] value = client.get(queueName, new ByteArrayTranscoder())

Вероятно, тот же трюк можно сделать для установки значения, хотя я не пробовал.

Я думаю, что вы можете установить байтовый массив напрямую.

Другие вопросы по тегам