Главная страница


ru.website

 
 - RU.WEBSITE -------------------------------------------------------------------
 From : Dmitry Ochnev                        2:5022/54      23 Nov 2001  23:06:08
 To : All
 Subject : JSP, JDBC и русские буквы
 -------------------------------------------------------------------------------- 
 
 
 У меня небольшая путаница с русскими буквами. Писал я с использованием
 рекоммендаций из статьи "Java: Русские буквы и не только..." с сайта webclub.ru.
 Есть небольшое Web-приложение на JSP. В почти каждой JSP-странице прописано
 <%@page contentType="text/html; charset=Windows-1251" %>
 Работа идет с базой под MySQL, под Win2k professional rus. Сервер Apache 1.3.20 
 и JRun 3.0, JDK 1.3, драйвер JDBC - org.gjt.mm.mysql.Driver. MySQL - версия
 "MySQL-Max", вроде бы 2.23.42.
 
 Коннект к базе делается так:
 // ... указали URL, имя драйвера
 Properties connInfo = new Properties();
 connInfo.put("user", "root");
 connInfo.put("password", "key");
 connInfo.put("useUnicode", "true");
 connInfo.put("characterEncoding", "Cp1251");
 // ... всякие try ...
 con = DriverManager.getConnection(url, connInfo);
 
 При этом при SELECT'ах все нормально.
 Если делать INSERT или UPDATE, то из передаваемого объекта класса Properties
 понадобилось исключить (?!? я ожидал противоположное) characterEncoding
 указанный Cp1251, то есть закомментировать строку
 connInfo.put("characterEncoding", "Cp1251");
 иначе вместо русских букв вставлялись знаки "?". Почему так происходит ?
 Кстати, поиск работает только с английскими буквами. Как приделать русские ?
 
 P.S.:
 Точно проверено, что в моей программе строки в кодировке Cp1251 в базу
 вставляются правильно, и лежат они там в Cp1251.
 Хотя, в my.cnf (файле конфигурации MySQL) написана кодировка latin-1:
 default-character-set=latin1
 
 P.S.2:
 В одних страницах без директивы <%@page contentType="text/html;
 charset=Windows-1251" %> не выводятся русские буквы, а в одной это не оказывает 
 никакого воздействия, и буквы выводятся нормально в любом случае. В первых
 страницах, данные с русскими буквами добыты из базы данных, а в тестовой
 странице, где директива не дает никакого изменения, русские буквы статично
 забиты в HTML. Эта причина для меня мало понятна.
 * Crossposted in RU.JAVA
 * Crossposted in RU.JAVA.CHAINIK
 * Crossposted in RU.WEBSITE
 
 --
 Met vriendelijke groet,
 Dmitry Ochnev
 Tula, RU
 
 ... dmitry_III<>mail.ru, ICQ: 69794043, http://designcentral.newmail.ru
 --- http://designcentral.newmail.ru/Dmitry_Ochnev_resume.txt
  * Origin: Web-development, programming in Perl (2:5022/54)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 JSP, JDBC и русские буквы   Dmitry Ochnev   23 Nov 2001 23:06:08 
Архивное /ru.website/18273bfecb06.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional