首页 > 代码库 > Servlet编码

Servlet编码

一,Servlet编码(常用的get和post)

  0,url的组成: scheme://ip:port/contextPath/servletPath/pathInfo?queryString

  例如,在 http://192.168.1.101:8080/ReceiveAndroid/ServletForPostMethod/pathInfo?name=莉莉&pwd=abc 中,

contextPath:/ReceiveAndroid
servletPath:/ServletForPostMethod
getScheme:http
uri:/ReceiveAndroid/ServletForPostMethod
url:http://192.168.1.101:8080/ReceiveAndroid/ServletForPostMethod/pathInfo?name=莉莉&pwd=abc
protocol:HTTP/1.1

  1,使用 HttpServletRequest.getRequestURI()方法 //内容为 contextPath/servletPath/pathinfo, 是浏览器提交过来的原始数据,没有被Servlet服务器decode过.

  2,使用 HttpServletRequest.setCharacterEncoding()方法仅适用于post提交的request body部分,而不适用于get提交的query string编码.

  3,html头部ContentType("text/html; charset=utf-8") [不是meta‘中的ContentType] 是针对java二进制码输出的结果,即我们在客户端看到的(使用的编码)

Servlet编码