|
0 / 0 / 0
Регистрация: 04.05.2010
Сообщений: 124
|
|
Как запихнуть русские буквы в БД из jsp?28.12.2010, 21:54. Показов 3084. Ответов 7
Метки нет (Все метки)
Сабж.
БД - MySQL На всех jsp стоит pageEncoding='cp1251' соединение получается из MysqlConnectionPoolDataSource с такими настройками: dbcp.setDatabaseName(dbName+'?useUnicode =true&characterEncoding=cp1251'); с горя написал фильтр, выставляющий запросу такую-же кодировку в БД упорно '?' вместо русских букв народ, огромная просьба - без флуда, расскажите наконец, что для этого надо?
0
|
|
| 28.12.2010, 21:54 | |
|
Ответы с готовыми решениями:
7
Как получить русские буквы из request /jsp/ JSP+javabeans - русские буквы Надо поддерживать русские буквы в приложении html (form, submit) <-> jsp(servlet, Struts Action) <-> MySql |
|
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 7
|
|
| 29.12.2010, 20:22 | |
|
когда я воевал с кодировками решающим ударом было добавление следующей строко в файл my.ini (который то ли в корне диска C: то ли в каталоге Windows):
default-character-set=cp1251
0
|
|
|
0 / 0 / 0
Регистрация: 04.05.2010
Сообщений: 124
|
|
| 29.12.2010, 20:43 [ТС] | |
|
ну, если бы все было так просто, было бы неинтересно жить
![]() я надеюсь найти решение, не зависящее от настроек сервера (мало ли, чего хостеры туда напишут )
0
|
|
|
0 / 0 / 0
Регистрация: 05.08.2010
Сообщений: 49
|
||||||
| 30.12.2010, 07:14 | ||||||
А есть еще такая весч: SetCharacterEncodingFilter.java Так вот - меня терзают смутные сомнеиния что это именно то что нужно.
0
|
||||||
|
paradise
|
|
| 30.12.2010, 09:36 | |
|
Может твоя проблема не только в чтении? С MySql я не работал, но, по идее, вопросы могут появиться при записи информации. Это зависит от драйвера, который ты используешь. Большинство из них пытаются перекодировать твой ввод в кодировку, которая установленна на сервере БД.
Позже, при считывании, происходит обратное перекодирование. НО, т.к. у тебя указана кодировка (в строке подключения) cp1251 и jsp имеет туже кодировку, то перекодирования не происходит. Т.е. текст остается в той кодировке, которая используется в БД. И, как ты можешь догадаться, она не cp1251. Решений несколько: 1. Поставить кодировку сервера в NONE. В этом случае все сложности по обработке кодировок ложаться на плечи программиста. На деле весь код как правило работает с одной кодировкой, и проблем не возникает. (Однако, нужно себе отдавать отчет, что кодировка текста, который ты пишешь в базу будет той, в которой храниться исходный файл.) 2. Узнать, в какой кодировке работает БД и использовать ее. Самый правильный вариант. З.Ы. Гемор с фильтрацией тоже может работать. В этом случае тебе тоже нужно значть кодировку БД. И иметь сервлет-фильтр, который будет парсить все паги твоего приложения. Может не стоит усложнять? |
|
|
3 / 3 / 3
Регистрация: 09.07.2008
Сообщений: 422
|
|
| 30.12.2010, 12:30 | |
|
paradise прав - надо писать в кодировке, которая установлена на MySQL-е. Однако тут есть подводные камни - например, используемая БД кодировка не работает с кирилицей (ведь по-дефолту кодировка MySQL - latin1).
1. Вынеси настройки кодировки для своего приложения в конфигурационный файл. Ты всегда можешь узнать у хостера, какую кодировку юзает на данный момент БД и прописать ее в свой конфиг. 2. Если уж совсем жить стало худо - можно использовать вместо varchar полей blob. Конвертируешь строку в байт-массив с нужной кодировкой и пишешь в БД. Соответственно, при чтении при конвертации байт-массива в строку указываешь ту же самую кодировку.
0
|
|
|
paradise
|
|
| 30.12.2010, 14:25 | |
|
В свою очередь, соглашусь с SVOLOCH.
Все же подумайте, стот ли вобще решать эту проблему? Часто ли вы меняете хост БД? Часто ли админ меняет кодировку БД? Сдается мне, игра не стоит... ничего...
|
|
|
0 / 0 / 0
Регистрация: 04.05.2010
Сообщений: 124
|
|
| 31.12.2010, 14:36 [ТС] | |
|
Суть игры не в конкретной победе, а в выработке стратегии
![]() заинтересованность народа радует, буду пробовать
0
|
|
| 31.12.2010, 14:36 | |
|
Помогаю со студенческими работами здесь
8
JSP страницы и русские символы
Как запихнуть запихнуть объект Me в Long? Как побороть русские буквы? Как рисовать русские буквы в GD? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc
О Господи, Вечный, Ты . . .
Я помоги, Бесконечный. . .
Я прошу Ты. . .
Я погибаю, спаси. . .
Я прошу Тебя Вечный. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|