Получение знака вопроса вместо акцентированного письма с использованием пружины MVC 3

Я много чего перепробовал и не мог понять почему я получаю? вместо акцентированного характера.

Я использую в моем HTML:


и мой контроллер имеет следующий код

@RequestParam ("name") String name
name = name.trim();
system.out.println(name);
//response t?ata
//expected tábata

как мне это исправить?

Спасибо

 Haim Raman19 февр. 2013 г., 08:37
Это сообщение или запрос на получение? Можете ли вы добавить реальный метод с реальными аннотациями?
 gerrytan19 февр. 2013 г., 04:38
Не могли бы вы получить правильные символы, кроме этогопросто когда вы печатаете его на консоль, ваша консоль неT поддерживает UTF-8? Попробуй это:stackoverflow.com/questions/2038733/...
 Luis Felipe Perez20 февр. 2013 г., 02:38
Это запрос Post, и это код: RequestMapping (value = "/ UserSignup», method = RequestMethod.POST) public String userSignup (RequestParam ("название") Строковое имя, RequestParam ("Эл. адрес") Строка электронной почты, RequestParam ("birthdayDay») String birthdayDay, RequestParam ("birthdayMonth») String BirthdayMonth, RequestParam ("birthdayYear») String birthdayYear, RequestParam ("секс») Струнный секс, RequestParam ("пароль") Строка пароля, RequestParam ("Подтверждение пароля") Подтверждение пароля в виде строки, ответ HttpServletResponse, модель ModelMap) {

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

Решение Вопроса

добавив следующий код в мой основной шаблон:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

такие как мандарин и арабский, сложны.

Я думаю, вы не видели последний из этого выпуска.

Вы должны быть уверены, что ваш код закодирован правильно в любой ссылке в цепочке.

Например.

база данных ->Ява ->response->браузерфайл свойств ->jav-> response->браузерзапрос (парам / форма) ->response->браузерЯва -> logger-> приставка

Я предлагаю после этого великого ответаКак заставить UTF-8 работать в веб-приложениях Java?

Чтобы приспособить его к весне, используйте spring ’s CharacterEncodingFilter.

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>
      org.springframework.web.filter.CharacterEncodingFilter
    </filter-class>
        <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>

Если вы используете i18n, обязательно определите кодировку по умолчанию для вашего ResourceBundleMessageSource, например.

<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:messages">
        <property name="defaultEncoding" value="UTF-8">
        <property name="useCodeAsDefaultMessage" value="false">
</property></property></property></bean>

Убедитесь, что ваши файлы свойств закодированы правильно с использованием Javas native2ascii.

Или лучше, если вы используете затмение, я рекомендуюПлагин редактора свойств.

Иногда сторонние фреймворки что-то ломают, и вам нужно сделать «волшебный»

new String(yourstring, "UTF8")

Для получения дополнительной информации см.Вот

Обратите внимание, что для некоторых средств разрешения представления также требуется определенная кодировка.

 Haim Raman24 февр. 2013 г., 07:33
Еще одна потенциальная проблема - кодирование приложения log4j. Добавьте следующее к вам файл log4j.properties log4j.appender.emsSpringLogFile.encoding = UTF-8
 Luis Felipe Perez21 февр. 2013 г., 21:44
Я проверю это. Спасибо, Хаим!

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