目录
问题编号 | 描述 | 解决方案 |
---|---|---|
1 | controller输出输入乱码 | 解决方案 |
2 | 数据库保存与读取乱码 | 需要做实验 |
3 | 多语言文件读取乱码 | 未发现乱码 |
测试方法
http://127.0.0.1:8080/changeLanguage?lang=中文
http://127.0.0.1:8080/welcome
以上两个链接,只要返回的是中文,就表示成功
在core工程中,追加了EncodingConfig.java配置类
@Configuration
public class EncodingConfig extends WebMvcConfigurationSupport {
@Bean
public HttpMessageConverter<String> responseBodyConverter() {
StringHttpMessageConverter converter = new StringHttpMessageConverter(
Charset.forName("UTF-8"));
return converter;
}
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
super.configureMessageConverters(converters);
converters.add(responseBodyConverter());
}
}
@Configuration
public class EncodingConfig extends WebMvcConfigurationSupport {
/**
* 这个函数的目的是将json放到最前边
* 因为controller返回String类型的时候,是StringHttpMessageConverter
* 所以在统一返回接口中出现错误,
* @see com.wukong.core.handler.ResponseResultHandler
* @param converters
*/
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
super.configureMessageConverters(converters);
converters.add(0,new MappingJackson2HttpMessageConverter());
}
}
Tomcat的配置文件server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"/>