servlet 之 response 回复 字节流 字符流
2016-01-14 23:44
295 查看
重定向 设置状态吗为302 添加响应头Location(告诉他重定向到哪里去)
//response.setStatus(302);
//添加响应头Location(告诉他重定向到哪里去)
//response.setHeader("Location", "http://www.baidu.com");
//------------------------------------------------------------
// servlet技术已经提供了一个方法,用来直接重定向.
response.sendRedirect("http://www.baidu.com");
例子3.响应头 相关的.
Refresh "3;http://www.baidu.com"
<meta http-equiv="Refresh" content="3;http://www.baidu.com" /> ==> 也能完成如上功能,区别只是这是html代码(模拟http协议).不属于http协议范畴.
响应正文相关的
例子4:向客户端输出中文.
字节流:
// 1.如何设置服务器端采用什么码表编码
//os.write("你好!!".getBytes("UTF-8"));
// 2.如何告诉浏览器采用什么码表解码
// <meta http-equiv="Content-Type" contet="text/html;charset=utf-8" >
// Content-Type: text/html;charset=UTF-8
字符流:
//要想不乱码只需要取保两端编码一致
//1 服务器端编码 默认值是ISO-8859-1
response.setCharacterEncoding("UTF-8");
//2 浏览器端解码 字符流的获得必须放在设置编码之后. 放在之前的话,writer的编码已经确定了.
response.setHeader("Content-Type", "text/html;charset=UTF-8");
//writer.print("<meta http-equiv='Content-Type' contet='text/html;charset=UTF-8' >");
String type=getServletContext().getMimeType("xx.jpg");
response.setHeader("Content-Type", type);// mime 类型可以在tomcate
// web.xml 中查找
//response.setStatus(302);
//添加响应头Location(告诉他重定向到哪里去)
//response.setHeader("Location", "http://www.baidu.com");
//------------------------------------------------------------
// servlet技术已经提供了一个方法,用来直接重定向.
response.sendRedirect("http://www.baidu.com");
例子3.响应头 相关的.
Refresh "3;http://www.baidu.com"
<meta http-equiv="Refresh" content="3;http://www.baidu.com" /> ==> 也能完成如上功能,区别只是这是html代码(模拟http协议).不属于http协议范畴.
响应正文相关的
例子4:向客户端输出中文.
字节流:
// 1.如何设置服务器端采用什么码表编码
//os.write("你好!!".getBytes("UTF-8"));
// 2.如何告诉浏览器采用什么码表解码
// <meta http-equiv="Content-Type" contet="text/html;charset=utf-8" >
// Content-Type: text/html;charset=UTF-8
字符流:
//要想不乱码只需要取保两端编码一致
//1 服务器端编码 默认值是ISO-8859-1
response.setCharacterEncoding("UTF-8");
//2 浏览器端解码 字符流的获得必须放在设置编码之后. 放在之前的话,writer的编码已经确定了.
response.setHeader("Content-Type", "text/html;charset=UTF-8");
//writer.print("<meta http-equiv='Content-Type' contet='text/html;charset=UTF-8' >");
OutputStream os = response.getOutputStream(); //设定服务器的编码格式 os.write("打搅电风扇电风扇啊".getBytes()); os.write("打搅电风扇电风扇啊".getBytes("utf-8")); //设定浏览器的 采用什么编码 //<meta http-equiv="Content-type" content="text/html;charset=utf-8"> // response.setHeader("Content-type", "text/html;charset=utf-8"); os.write("<meta http-equiv='Content-Type' contet='text/html;charset=utf-8'>".getBytes());
// 字符流 // 要想不乱吗就 // 1、设定服务器段 默认 ios-8859-1 response.setCharacterEncoding("utf-8"); PrintWriter wr = response.getWriter(); // 2、浏览器段 // response.setHeader("Content-type", "text/html;charset=utf-8"); wr.print("<meta http-equiv='Content-Type' contet='text/html;charset=UTF-8' >"); // wr.write("sdfd悲剧啊可是到了"); wr.print("sdfd悲剧啊可是到了");
服务端返回一个图片的 // 1、告诉浏览器我发送给他的是图片类型的 // 2、读取服务器上的那个图片 // 3、输出那个图片 response.setHeader("Content-Type", "img/jpeg");// mime 类型可以在tomcate // web.xml 中查找 ServletOutputStream os = response.getOutputStream(); String path = getServletContext().getRealPath("/WEB-INF/1.JPG"); FileInputStream sis = new FileInputStream(path); int len = 0; byte[] by = new byte[1024]; while ((len = sis.read(by)) != -1) { os.write(by, 0, len); } sis.close();
// 1、告诉浏览器我发送给他的是图片类型的 // 2、读取服务器上的那个图片 // 3、输出那个图片 response.setHeader("Content-Type", "img/jpeg");// mime 类型可以在tomcate // web.xml 中查找 //建议使用 什么名字保存的 response.setHeader("Content-Disposition","attachment;filename=aa.jpg"); ServletOutputStream os = response.getOutputStream(); String path = getServletContext().getRealPath("/WEB-INF/22.JPG"); FileInputStream sis = new FileInputStream(path); int len = 0; byte[] by = new byte[1024]; while ((len = sis.read(by)) != -1) { os.write(by, 0, len); } sis.close();
String type=getServletContext().getMimeType("xx.jpg");
response.setHeader("Content-Type", type);// mime 类型可以在tomcate
// web.xml 中查找
相关文章推荐
- Json创建,解析
- 线程状态
- 实现Caesar密码(加法密码)加解密
- IAAS 云平台 Apache CloudStack 2016 年展望
- 实时日志刷新
- linux 的date命令及系统时间设置
- 使用 Boost 的 IPC 和 MPI 库进行并发编程
- 嵌入式驱动开发流程
- linux下手动build spark1.6.0
- 学习小记--Linux内核通知链
- javabean
- js-DOM,DOM扩展
- Yii2-国际化A
- 比nerdtree更好的文件浏览器:vimfiler
- Android退出应用最优雅的方式
- 支持APP手机应用(android和ios)接口调用 传输验证可用 shiro 的 MD5、SHA 等加密
- oc 子类调用父类的私有方法
- 1. max31855 热电偶至输出转换器 分析
- 学习第三天——IT之路,坚定的走下去
- 求矩形并的面积(线段树)【模板】