Hazelcast не может читать данные в свой собственный объект класса, используя IMap.get, где данные вставляются с использованием текстового протокола Memcached.

1

Я вставляю запись в Hazelcast из приложения C с использованием API клиентской библиотеки Memcached, где запись выглядит следующим образом:

typedef struct _activeClient
{
    char ID[25];
    int  IP;
    char aMethod[16];
}activeClient;

Теперь я пытаюсь прочитать ту же запись, используя Hazelcast Java Native API. Вот моя программа на Java.

IMap < String, MemcacheEntry > mapInst = client.getMap("hz_memcache_ABC_MAP");
System.out.println("Map Size:" + mapInst.size());
String key = new String("70826892122991");
MemcacheEntry tmpValRec = pvrMapIst.get(key);
System.out.println("Key:" + key + "ID:" + tmpValRec.getValue());

Здесь tmpValRec.getValue() печатает содержимое записи в одном формате String. Но я хочу извлечь значение каждого члена из tmpValRec в свой собственный объект класса Java. Вот класс

class ActiveClients
{
    String ueID;
    int Ip;
    String aMethod;
    ActiveClients()
    {
        ueID = "";
        Ip = 0;
        aMethod = "";
    }
}

Привести меня к примеру было бы большой помощью.

Теги:
hazelcast
memcached

1 ответ

0

Я предполагаю, что единственным вариантом является разбор строки для десериализации вашего объекта. Я знаю, что это боль, но я не вижу лучшей альтернативы. Если, конечно, вы не сохраните blob как значение в memcached, где blob - сериализованное содержимое класса.

  • 0
    Спасибо Pveentjer за ваш вклад.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню