前言
本文主要介绍内容:
- l Response对象和状态码的简单介绍
- l 字节流和字符流响应消息
- l 响应图片以及设置刷新时间,缓存时间
- l 请求重定向
- l 文件下载
项目环境
开发IDE:IDEA2022(已经配置好了tomcat10 及maven)
JDK版本:jdk17
一、响应对象和状态码的简单介绍
响应对象是主要负责给客户端发送响应结果的对象。主要是Tomcat通过实现HttpServletResponse接口和servletResponse接口来产生响应对象,并传递到doget和dopost方法中。
状态码简单介绍:
二、字节流和字符流响应消息
2.1字节流响应消息
字节流响应对象主要涉及以上的方法,具体实例如下所示:
其中我们通过ServletOuputStream对象,向客户端输出内容,而setcontentType方法可以让浏览器以我们指定的格式来解析文本。从而减少中文乱码问题。
项目运行如下:
2.2字符流响应消息
除了用字节流之外,我们还可以通过字符流来向客户端输出内容。字符流相比字节流,受约束比较大,只能写出一些字符类消息。而字节流则可以输出更多的内容。同时也可以通过setcontentType方法可以让浏览器以我们指定的格式来解析文本。从而减少中文乱码问题。同时由于流对象是又tomcat容器创建的,所以我们不需要关闭流对象。
具体实例如下:
结果如下:
三、响应图片以及设置刷新时间,缓存时间
3.1响应图片
具体实例如下:
结果如下:
注意事项:由于项目是部署到tomcat上的,所以new FileInputStream()方法里面不能直接填写当前项目下的图片地址,需要通过文件的相对地址获取到图片部署到tomcat的绝对地址来创建输入流。
3.2设置刷新时间
3.3设置刷新时间
结果如下:
我们通过重新输入网址,查看是否有缓存,可以看到已接受栏显示的是(来自缓存字样)。注意:按了刷新按钮,浏览器会重新向服务器端请求资源,不会用缓存的文件。
也可以通过IE浏览器访问,然后通过右击右上角“设置”按钮,选择“Internet选项”,再点解“设置”按钮,再进入到网站数据设置,点击右下角的查看文件,找到我们输入网址对应的文件,对比过期时间和上次访问时间,可以看到是相差一个小时,可见缓存时间设置成功了。
3.4定时刷新
实例如下:
结果如下:
5秒后跳转页面如下:
四、请求重定向
具体实例如下:
结果如下:
由此可以看出,数据是不能共享的。
通过开发者工具也可以看出是重定向的。
五、文件下载
文件下载操作实现步骤如上图所示,实例如下图所示:
结果如下: