笔记之--response和request对象编码等

本文深入探讨了在Servlet中如何正确设置Response和Request对象的编码,包括设置编码的比较、获取数据的不同方法、MIME类型的含义及应用,以及缓存设置、权限控制等内容。通过实例解析,帮助开发者掌握关键细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,在servlet中设置response和request对象编码的比较:
// 数据到前台编码设置:
response.setContentType("text/http;charset=utf-8");
// 或者下面两句
response.setCharacterEncoding("utf-8");//单独一个无效
response.setContentType("text/http");



// 设置数据到后台的编码方式仅需下面一句即可
// request.setCharacterEncoding("utf-8");




2,同样为了获取从servlet页面传来的数据,可以使用两种方法;
在jsp页面使用EL表达式获取${requestScope.message },优点是不使用脚本代码,当message无值时,不输出任何东西。
在jsp页面使用脚本代码<%=request.getAttribute("message") %>,当message无值时,页面会输出null这个单词。




3,MIME是一个编码类型,其格式类似于:response.setContentType("text/http");前面是大类,后面是小类,表示以小类的形式显示大类。







4,关于html中的链接的书写。
//href中的地址书写很重要,./表示当前的应用路径,去掉.就会找不到相关资源。

<a href="./test.html">test.html</a>
点这个地址栏出现http://localhost:8080/day17_filter_example/test.html
<a href="/test.html">test.html</a>
去掉上面的href中.再点它就地址栏会得这个,即没有相对路径,直接从服务器地址开始找资源http://localhost:8080/test.html

<img src="./Hydrangeas.jpg"/>

记住在html中不能这样使用:

<a href="${pageContext.request.contextPath}/test.html">test.html</a>html没有EL表达式,当然也不存在这样脚本的代码:<a href="<%=request.getContextPath() %>/test.html">test.html</a>






5,关于缓存设置:
//设置网页的过期时间,一旦过期就必须再次到服务器端调用。
response.setDateHeader("Expires",-1)


//设置请求或者相应应遵循的缓存机制,no-cache指示请求或者相应消息不能缓存。
response.setHeader("Cache-Control","no-cache")


//是用于设定禁止浏览器从本地的缓存中调阅页面内容,设定后一旦离开网页就无法从Cache中再调用。

response.setHeader("Pragma","no-cache")


1,权限控制
1)粗粒度权限控制:如果用户登录就能访问其他一些功能,否则不能,此时跳转到登录页面(即只判断是否登录)
2)细粒度权限控制:在粗粒度的基础上又添加了一些权限限制,不同级别的用户的访问操作的权限不同(即具体到系统的方法级别,比如页面的按钮,超链接,图片等的权限)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值