Я читаю большой двоичный объект из базы данных MySql, используя JDBC. Я знаю, что результирующий массив байтов хорош, я отправил его по HTTP в виде строкового литерала чисел для каждого байта и успешно загрузил результат (jpg). (просто чтобы доказать, что данные сервлета mysql -> java хороши).
Построение новой строки из этого массива байтов с использованием UTF-8 дает строку короче по длине, чем массив байтов, и значения, которые я не могу расшифровать. Если UTF-8 составляет ПО КРАЙНЕЙ МЕРЕ 1 байт на символ, не должна ли результирующая строка быть МИНИМУМ длиной массива байтов, из которого она сгенерирована? (для этого конкретного примера длина байта составляет 12 079 474 байта, а результирующая длина строки составляет 11 501 845)
Спасибо за ваше время!