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

来源:互联网 发布:玻璃胶 白色透明知乎 编辑:程序博客网 时间:2024/04/30 21:35
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)细粒度权限控制:在粗粒度的基础上又添加了一些权限限制,不同级别的用户的访问操作的权限不同(即具体到系统的方法级别,比如页面的按钮,超链接,图片等的权限)