response和request的设置字符方式及区别

request.setCharacterEncoding():

​ 是设置从request中取得的值或从数据库中取出的值。
​ 指定后可以通过getParameter()则直接获得正确的字符串,如果不指定,则默认使用iso8859-1编码。值得注意的是在执行setCharacterEncoding()之前,不能执行任何getParameter()。而且,该指定只对POST方法有效,对GET方法无效。

response.setCharacterEncoding():

​ 设置HTTP 响应的编码。
​ 如果之前使用response.setContentType设置了编码格式,则使用response.setCharacterEncoding指定的编码格式覆盖之前的设置。
​ 调用此方法,必须在getWriter()执行之前或者response被提交之前。

response.setContentType():

​ 指定 HTTP 响应的编码,同时指定了浏览器显示的编码。
​ 即设置发送到客户端的响应的内容类型。
​ 调用此方法,必须在getWriter()执行之前或者response被提交之前。
​ 如:response.setContentType(“text/xml;charset=GBK”)
​ 前者是设置动态文字(参数,数据库),后者设置页面静态文字

–以上内容根据他人文章整理
——No Best Code , Only Better Code

你可能感兴趣的:(JAVA——细节问题总结,request,response,设置字符编码)