1、lstepl:确保表单所在的页面按照指定的字符集打开 <meta http-equiv=”content-type” content=”text/html;charset=utf-8”>lstep2:在服务器端按照这个编码格式解码即可 — request.setCharacterEncoding(“utf-8”) 一 添加在读取参数的前面 一 此方法只针对post请求有效
2、解决GET方式时的乱码问题:lstepl:使用meta确保表单所在页面按指定字符集打开 lstep2: String username= request.getParameter(“”); username= new String(username.getBytes( "iso-8859-1"),"utf-8");
3、l编码:将Unicode字符集对应的字节数组转换成某种本地字符集(如UTF-8)对应的字节数组 l解码:将某种本地字符集对应的字节数组转换为Unicode字符集对应的字节数组 l编码和解码使用的字符集不一致就产生了乱码问题
4、l在获取WriteOut对象及调用out方法之前调用setContentType方法 lresponse.setContentType(”text/html;charset=utf-8”) l作用: 一 通知容器,在调用out.println方法输出时,使用指定的字符集 一 生成消息头中content-type的值,通知浏览器,服务器返回的数据类型和字符集
5、step1、 浏览器依据IP建立与容器的连接step2、 浏览器请求数据打包step3、 容器解析请求数据包,封装对象
6、step4、 容器依据路径找到Servlet创建对象step5、 容器调用Servlet对象的service方法step6、 容器将响应打包发给浏览器step7、 浏览器取出结果,生成页面