springmvc 에서 ajax 를 보 내 중국어 난 장 판 해결 방법 을 모 았 습 니 다.
저 는 sping-web-3.2.2,jar 를 사용 합 니 다.
방법 1:
@RequestMapping 에 produces="text/html;charset=UTF-8"
@RequestMapping(value = "/configrole", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")
public @ResponseBody String configrole() {
......
}
방법 2:StringHttpMessage Converter 에 기본적으로 문자 집합 이 설정 되 어 있 기 때문에 ISO-8859-1 입 니 다.
그래서 소스 코드 를 받 아 UTF-8 로 수정 하고 spring-web-3.2.2.jar 에 포장 합 니 다.
public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String>
{
public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8");
..........
}
방법 3:org.springframework.http.MediaType 의 구조 적 방법 에 대한 인 자 를 수정 하고 applicationContext-mvc.xml 에 설정 을 추가 합 니 다.
public MediaType(String type, String subtype, Charset charset) {
super(type, subtype, charset);
}
Xml 코드
<bean id="stringHttpMessageConverter"
class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<bean class="org.springframework.http.MediaType">
<constructor-arg value="text" />
<constructor-arg value="plain" />
<constructor-arg value="UTF-8" />
</bean>
</list>
</property>
</bean>
방법org.springframework.http.converter.stringHttpMessageConverter 류 는 요청 이나 해당 문자열 을 처리 하 는 클래스 이 며,기본 문자 집합 은 ISO-8859-1 이기 때문에 json 에 중국어 가 있 을 때 오류 가 발생 합 니 다.
StringHttpMessageConverter 의 부모 클래스 에는 List
해결 방법 은 설정 파일 에 다음 코드 만 추가 하면 됩 니 다.
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
다른 MediaType 형식 을 처리 하려 면 list 탭 에 다른 value 탭 을 추가 할 수 있 습 니 다.springmvc 에서 aax 를 보 내 는데 중국어 난 장 판 문제 가 발생 하면 여기까지 소개 해 드 리 겠 습 니 다.도움 이 되 셨 으 면 좋 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.