分享

java servlet笔记:设置编码集、文件下载和两种服务器跳转

 Frank_Chia 2018-01-26

java servlet笔记:设置编码集、文件下载和两种服务器跳转

java笔记

一设置编码集:

设置请求的编码:

request.setCharacterEncoding(服务器编码)

在代码中也就是这样:

java servlet笔记:设置编码集、文件下载和两种服务器跳转

本身这个语法是对请求实体进行设置编码,针对于post有效,如果需要对get同时设置编码,需要在设置端口号的地方添加一个useBodyEncodingForURI='true'.,如下图:

java servlet笔记:设置编码集、文件下载和两种服务器跳转

设置响应实体中的编码:

response.setHeader('content-type','text/html;charset=服务器编码')

在代码中是这样:

java servlet笔记:设置编码集、文件下载和两种服务器跳转

表单如果是get方式提交,那么action后面跟的参数会被覆盖。解决方式,1)使用post传参。2)可以使用隐藏域

二、下载功能:

1)设置下载的响应头

response.setHeader('content-disposition','attachment;filename=文件名')

文件名是用户所接收到的文件的名字,如果文件名字中带中文,需要设置编码集为iso8859-1

在代码中是这样:

java servlet笔记:设置编码集、文件下载和两种服务器跳转

2)将资源以流的方式输出

java servlet笔记:设置编码集、文件下载和两种服务器跳转

三、服务器跳转的两种方式:

请求转发:

request.getRequestDispacher(地址).forward(请求对象,响应对象)

特点:

1)整个过程只有一次请求

2)地址栏不发生变化

3)效率高

4)不能访问外部资源

5)绝对路径的/ 代表的是根目录之后的 /

6)一般习惯性的在请求转发之后添加一个return

重定向:

response.sendRedirect(地址)

特点:

1)整个过程只有两次请求

2)地址栏发生变化

3)效率低

4)能访问外部资源

5)绝对路径的/ 代表的是端口号之后的 /

6)一般习惯性的在重定向之后添加一个return

路径总结:

请求转发: 绝对路径的/ 代表的是根目录之后的 /

重定向: 绝对路径的/ 代表的是端口号之后的 /

页面的路径: 绝对路径的/ 代表的是端口号之后的 /

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多