我有一个从MySQL获取数据的Tomcat 8。 MySQL中的行编码良好(如俄语文本)。如果我调试服务器,所选行的编码良好。但是,返回的JSON具有错误的字符。
我检查了我的server.xml
,我有:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="UTF-8" redirectPort="8443" />
请注意我在那里有URIEncoding="UTF-8"
。
我还能做什么?
答案 0 :(得分:0)
据我所知,URI编码仅适用于URI;它不会影响您发回的任何内容的编码。您应该设置正确的响应标头,例如&#34; Content-type:application / json;字符集= UTF-8&#34;
这是我正在处理的Spring Boot应用程序的片段,它是针对请求的,但它可能会让您了解您的需求:
private RestTemplate rest = new TestRestTemplate() {{ getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName("UTF-8"))); }};
private HttpHeaders requestHeaders = new HttpHeaders() {{ setContentType(MediaType.APPLICATION_JSON); }};
如果你能展示你的代码,我们可以更好地帮助你。