gpt4 book ai didi

spring-mvc - 字符编码 Spring MVC

转载 作者:行者123 更新时间:2023-12-01 22:17:13 24 4
gpt4 key购买 nike

我在处理土耳其语字符时遇到问题...在我的 JSP 页面中,没有问题...但是,当 Java 端发出警报时,土耳其语字符(ŞşıığĞüÜç...) 看起来像这样 (ä±, ?,μ,μ,Å,...)

在JSP页面中,我使用此代码可以解决土耳其字符问题

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

在 Spring MVC 配置中,我尝试了很多方法,但没有成功...例如在我的 mvc 配置类中,我像这样设置了 MessageSource;

@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:messages");
messageSource.setUseCodeAsDefaultMessage(true);
messageSource.setDefaultEncoding("UTF-8");
messageSource.setCacheSeconds(0);
return messageSource;
}

在此程序中,我尝试重置密码并输入注销电子邮件地址。最后我收到异常,以下是异常代码博客。

@Autowired
private MessageSource messages;
...

@ExceptionHandler({ UserNotFoundException.class })
public ResponseEntity<Object> handleUserNotFound(final RuntimeException exception, final WebRequest request) {
logger.error("404 Status Code", exception);
final GenericResponse bodyOfResponse = new GenericResponse(messages.getMessage("message.userNotFound", null, request.getLocale()), "UserNotFound");
return handleExceptionInternal(exception, bodyOfResponse, new HttpHeaders(), HttpStatus.NOT_FOUND, request);
}

在我的 messages_tr_TR.properties 文件中,

...
message.userNotFound=Kullanıcı Bulunamadı
...

但在 JSP 页面中此警报显示如下;

Kullanä±cä± Bulunamadä±

如何解决这个问题..

最佳答案

后续评论,您也可以在响应头中设置编码。如果您返回 json ,则示例为

HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.add("Content-Type", "application/json; charset=utf-8");
return handleExceptionInternal(exception, responseHeaders, HttpStatus.NOT_FOUND, request);

关于spring-mvc - 字符编码 Spring MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29818443/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com