Гектор для Кассандры

Я не могу настроить Hector для Cassandra. Я просмотрел документацию и Cassandra wiki . Проблема с этими документами заключается в том, что большая часть информации там устарела или минималистична (или мне не хватает знаний). В любом случае, мне интересно, может ли кто-нибудь предоставить некоторые грубые упрощенные руководство по его установке.

Я стремлюсь создать страницу JSP, которая может использовать базу данных Cassandra.

Что я сделал на данный момент:

  • Я загрузил Hector 1.0- 2 и Cassandra 1.0.7.
  • Я установил Cassandra и проверил, что она работает (использовал CLI для создания новых столбцов с помощью ключей)
  • Пытался распаковать me.prettyprint.cassandra в Java каталог проекта, но по-прежнему ничего.

Я также не уверен, где взять Thrift API (или как его установить)? И если он мне вообще понадобится?

Любая помощь будет принята с благодарностью.

-121 --- 1942 634-

Проблемы с преобразованием байтового массива в строку и обратно в байтовый массив По этой теме много вопросов, одно и то же решение, но у меня это не работает. У меня есть простой тест с шифрованием. Само шифрование / дешифрование работает (пока я с этим справляюсь ...

Есть много вопросов по этой теме, то же решение, но это не работает для меня. У меня есть простой тест с шифрованием .Само шифрование / дешифрование работает (пока я обрабатываю этот тест с самим массивом байтов, а не как строки). Проблема в том, что не хочу обрабатывать его как массив байтов, а как String, но когда я кодирую массив байтов в строку и обратно, результирующий массив байтов отличается от исходного массива байтов, поэтому расшифровка больше не работает. Я пробовал следующие параметры в соответствующих строковых методах: UTF-8, UTF8, UTF-16, UTF8. Ни один из них не работает. Результирующий байтовый массив отличается от оригинала. Есть идеи, почему это так?

Encrypter:

public class NewEncrypter
{
    private String algorithm = "DESede";
    private Key key = null;
    private Cipher cipher = null;

    public NewEncrypter() throws NoSuchAlgorithmException, NoSuchPaddingException
    {
         key = KeyGenerator.getInstance(algorithm).generateKey();
         cipher = Cipher.getInstance(algorithm);
    }

    public byte[] encrypt(String input) throws Exception
    {
        cipher.init(Cipher.ENCRYPT_MODE, key);
        byte[] inputBytes = input.getBytes("UTF-16");

        return cipher.doFinal(inputBytes);
    }

    public String decrypt(byte[] encryptionBytes) throws Exception
    {
        cipher.init(Cipher.DECRYPT_MODE, key);
        byte[] recoveredBytes = cipher.doFinal(encryptionBytes);
        String recovered = new String(recoveredBytes, "UTF-16");

        return recovered;
    }
}

Это тест, в котором я его пробую:

public class NewEncrypterTest
{
    @Test
    public void canEncryptAndDecrypt() throws Exception
    {
        String toEncrypt = "FOOBAR";

        NewEncrypter encrypter = new NewEncrypter();

        byte[] encryptedByteArray = encrypter.encrypt(toEncrypt);
        System.out.println("encryptedByteArray:" + encryptedByteArray);

        String decoded = new String(encryptedByteArray, "UTF-16");
        System.out.println("decoded:" + decoded);

        byte[] encoded = decoded.getBytes("UTF-16");
        System.out.println("encoded:" + encoded);

        String decryptedText = encrypter.decrypt(encoded); //Exception here
        System.out.println("decryptedText:" + decryptedText);

        assertEquals(toEncrypt, decryptedText);
    }
}

50
задан Bevor 1 February 2012 в 03:58
поделиться