只是想知道场景背后是什么。 实际上我们似乎可以使用以下命令设置编码:
response.setContentType("text/html; charset=UTF-8")
response.setCharacterEncoding("UTF-8")
有什么区别?
答案 0 :(得分:33)
javadoc非常清楚区别:
void setCharacterEncoding(String charset)
设置发送到客户端的响应的字符编码(MIME字符集),例如,设置为UTF-8。如果字符编码已由setContentType(java.lang.String)
或setLocale(java.util.Locale)
设置,则此方法会覆盖它。 使用字符串setContentType(java.lang.String)
调用text/html
并使用UTF-8字符串调用此方法与使用字符串setContentType
text/html; charset=UTF-8等效>
void setContentType(String type)
如果尚未提交响应,则设置发送到客户端的响应的内容类型。 给定的内容类型可能包含字符编码规范,例如text/html;charset=UTF-8
。