HttpServletResponse
服务器对浏览器做出的响应,将需要发送给浏览器的所有数据全部存放在此对象。使用流操作,存放在指定的流中,数据将显示在浏览器中。
字节流 response.getOutputStream()
字符流 response.getWriter() ;
二者不能同时存在。
long str = new Date().getTime() ;
ServletOutputStream out = response.getOutputStream() ;
out.print(str);
out.close();
long str = new Date().getTime() ;
PrintWriter pw = response.getWriter() ;
pw.print(str);
pw.close();
处理中文
response.setContentType("text/html;charset=UTF-8");
//通知响应浏览器的字符编码 通知tomcat和浏览器 当前servlet发送的数据的编码方式
String str = "中文" ;
//字节流
ServletOutputStream out = response.getOutputStream() ;
out.write(str.getBytes());
//GBK编码
out.write(str.getBytes("UTF-8"));
//UTF-8编码
//下载到本地的副本 服务器默认GBK解析
out.close();
response.setContentType("text/html;charset=UTF-8");
String str = "中文" ;
PrintWriter pw = response.getWriter() ;
pw.write(str);
pw.close();
HttpServletRequest
浏览器向服务器的请求(浏览器数据发送给服务器时,数据存放的地方) Get/Post
处理中文post 此时请求页面的编码方式为UTF-8
//通知用户提交的数据的编码方式 charset
request.setCharacterEncoding("UTF-8");
String name = request.getParameter("username") ;
System.out.print(name);
性别:
<input type="radio" name="sex" check="checked" value="0" />男
<input type="radio" name="sex" value="1" />女
爱好:
<input type="checkbox" name="love" value="0"/>打麻将
<input type="checkbox" name="love" value="1"/>吃饭
<input type="checkbox" name="love" value="2"/>睡觉
检讨:
<textarea name="error"></textarea>
request.getParameter("sex") ;
//获取radio的值
request.getParameterValues("love") ;
//获取checkbox的值
处理中文 Get方式
String str = request.getParameter("username") ;
//http协议传输
String realStr = new String(str.getytes("ISO-8859-1"),"UTF-8") ;
//获得所有的请求的元数据
String query = request.getQueryString() ;
String realStr = URLDecoder.decode(query,"UTF-8") ;
System.out.println(realStr);