Проблема кодировки символов весной

Я застрял в большой проблеме с кодированием на моем сайте! Я использую Spring 3, Tomcat 6 и MySQL DB. Я хочу поддерживать немецкий и чешский языки наряду с английским на своем веб-сайте, я создал все JSP в виде файлов UTF-8, и в каждый jsp я включаю следующее:

<%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Я создал messages.properties (по умолчанию чешский), messages_de.properties и messages_en.properties. И все они сохраняются в виде файлов UTF-8.

Я добавил следующее в web.xml:

<filter>
    <filter-name>encodingFilter</filter-name>
    <filterclass>
          org.springframework.web.filter.CharacterEncodingFilter</filterclass>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
 </filter>

 <locale-encoding-mapping-list>
    <locale-encoding-mapping>
        <locale>en</locale>
        <encoding>UTF-8</encoding>
    </locale-encoding-mapping>
    <locale-encoding-mapping>
        <locale>cz</locale>
        <encoding>UTF-8</encoding>
    </locale-encoding-mapping>
    <locale-encoding-mapping>
        <locale>de</locale>
        <encoding>UTF-8</encoding>
    </locale-encoding-mapping>
</locale-encoding-mapping-list>

 <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
 </filter-mapping>  

И добавьте следующее в мой applicationContext.xml:

<bean id="messageSource"    
    class="org.springframework.context.support.ResourceBundleMessageSource"
    p:basenames="messages"/>

<!-- Declare the Interceptor -->
<mvc:interceptors>    
    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"
          p:paramName="locale" />
</mvc:interceptors>

<!-- Declare the Resolver -->
<bean id="localeResolver"  
       class="org.springframework.web.servlet.i18n.SessionLocaleResolver" />

Я установил для атрибута useBodyEncodingForURI значение true в элементе server.xml в папке:% CATALINA_HOME% / conf, также в другой раз попытался добавить вместо него URIEncoding = "UTF-8".

Я создал все таблицы и поля с помощью charset [utf8] и collection [utf8_general_ci]

Кодировка в моем браузере UTF-8 (кстати, у меня IE8 и Firefox 3.6.3)

Когда я открываю браузер MYSQL Query и вручную вставляю чешские или немецкие данные, они вставляются правильно и корректно отображаются в моем приложении.

Итак, вот список проблем, которые у меня есть:

По умолчанию загружается messages.properties (чешский), вместо этого по умолчанию загружается messages_en.properties.

В веб-форме, когда я ввожу данные на чешском языке, а затем нажимаю «Отправить», в контроллере я распечатываю данные в консоли, прежде чем сохранить их в БД, то, что печатается, неверно, имеет странные символы, и это точные данные, которые сохраняет в БД.

Я не знаю, где ошибка! Почему я не могу заставить его работать, хотя я делал то, что делали люди, и работал на них! не знаю ..

Пожалуйста, помогите мне, я застрял в этой дерьмовой проблеме с незапамятных времен, и это сводит меня с ума!

Заранее спасибо.

Ответы на вопрос(3)

Ваш ответ на вопрос