大数据正式15 缺乏、安全感 2022-06-04 02:39 413阅读 0赞 # 大数据正式15 # ### Response、ServletConfig、ServletContext介绍: ### * ![uXJ434i.jpg][] ### 简单补充 ### * 【服务器-浏览器】乱码产生的地方 : 1. 服务器向响应头发送数据的时候 2. 响应头发送到浏览器的时候 3. 浏览器解析的时候 * 乱码的解决 1. 服务器向响应头发送数据的时候 1. 字符【直接发+元数据处理(2.1)】 2. 字节【"".getBytes("编码")】 2. 响应头发送到浏览器的时候 1. 原数据【response.setCharacterEncoding("编码")】 2. 二进制数据【直接发】 3. 浏览器解析的时候 * 服务器设置响应头的浏览器解码方式【setHeader(“Content-Type”,“text/html;charset=utf-8”)】 * 注意: 1. Response中:流不用关--服务器会自动关流 2. Response中:只能获取一种流(同时获取两种流会出错) * 重定向: * 302+position # # response.setState(302); response.setHeader("Location","地址"); # # response.sendRedirect("地址"); * 定时刷新 * setHeader("Refresh","时间;url=网址"); * 禁用缓存【Expires,Cache-Control,Pragma】【历史原因,三个都得禁用,为了兼容性】 * 大部分是好的 * 一部分不好:验证码不能缓存;火车票 # # response.setHeader("Cache-Control","no-cache") response.setHeader("Progma","no-cache") response.DataHeader("Expires",0); ### 资源跳转 ### * 注:【没需求时,优先使用request方式,请求次数少,减少服务器的压力】 * 方式1:Request请求转发【利用Request域传递数据】 1. 服务器内发生 2. 只有一次请求响应 3. 一个Request对象 4. 可以用Request域传递数据 5. 地址栏不发生变化--浏览器不知道此次的请求 6. 转发的地址是内部地址--不需要写应用名称 * 方式2:Response重定向【改变地址栏、刷新】 1. 服务器外发生的资源跳转 2. 两次请求,两次响应 3. 因为Request是不一样的,所以不能 用Request域来传递数据 4. 浏览器知道重定向的存在 5. 地址栏发生变化 6. 刷新操作是最后请求最后一个资源 7. 外部地址 * 方式3:定时刷新【改变地址栏、刷新、有提示信息】 1. 服务器外发生的资源跳转 2. 两次请求,两次响应 3. 因为Request是不一样的,所以不能 用Request域来传递数据 4. 浏览器知道重定向的存在 5. 地址栏发生变化 6. 刷新操作是最后请求最后一个资源 7. 外部地址 ### ServletConfig ### * 每个Servlet都有一个ServletConfig对象,代表当前的Servlet在web.xml中的配置信息 * 获取:Servlet在初始化时候,传入了一个ServletConfig对象Servlet.getServletConfig(); * 方法: 1. 获取<servlet-name>中的值:config.getServletName() 2. 获取所有初始化参数<init-param>的值:config.getInitParameterNmaes()【不想写死的信息放在web.xml中灵活配置】 3. 获取指定值的初始化参数:config.getInitParameter(String key) ### ServletContext ### * 代表当前web应用 * 生命周期 1. 这个对象在服务器启动时创建并一直存在,直到服务器关闭 2. 生命周期和web应用一样 * 获取方式 1. config.getServletContext(); 2. this.getServletConfig(); * 用途 1. 获取web应用初始化参数<context-param>:context.getInitParameter(String key) 2. 域对象 1. 生命周期:和web一样长 2. 作用范围:整个web应用 3. 主要功能:web应用里共享数据 ### 路径问题: ### 1. 相对路径(路径):Tomcat下的bin下 2. 绝对路径(/路径):程序启动的根目录 3. 带盘符的绝对路径(盘符:路径):在这个路径下找 4. Servlet下解决:context.getRealPath("tomcat下的路径相对");【web的路径+文件的相对路径(发布到tomcat时的路径)】【原理:动态获取web项目的路径+项目下的资源的相对路径】 5. 没有Servlet下,利用类加载器来加载资源:this.getClass().getClassLoader().getResource("相对于classes的路径").getPath();【基于类加载的地方的相对路径】 6. 注意:路径的对应位置--项目资源文件的位置的对应关系【注意:最大法范围不能超过Tomcat】 [uXJ434i.jpg]: https://i.imgur.com/uXJ434i.jpg
相关 大数据正式5 大数据正式5 常见的shell命令 管道命令 管道符| 将两个命令隔开,左边命令的输出就会作为管道右边命令的输入 连续使 旧城等待,/ 2022年06月06日 10:29/ 0 赞/ 218 阅读
相关 大数据正式2 大数据正式2 用户身份与用户组记录的文件 在Linux系统当中,默认情况下所有的系统上的账号信息都记录在/etc/passwd这个文件内(包括root用户), 快来打我*/ 2022年06月06日 08:38/ 0 赞/ 143 阅读
相关 大数据正式10 大数据正式10 jQuery 定义:jQuery是一个“写的更少”,但“做的更多”的轻量级JavaScript函数库 优势 1. 可 ゞ 浴缸里的玫瑰/ 2022年06月05日 06:24/ 0 赞/ 226 阅读
相关 大数据正式15 大数据正式15 Response、ServletConfig、ServletContext介绍: ![uXJ434i.jpg][] 简单补充 【 缺乏、安全感/ 2022年06月04日 02:39/ 0 赞/ 414 阅读
相关 大数据正式32 大数据正式32 Spring中的JDBC jar包准备 ![zW1gEQQ.png][] bean+properties普通配置 悠悠/ 2022年06月03日 08:44/ 0 赞/ 148 阅读
相关 大数据正式27 大数据正式27 Spring 先来张图简单看一下 ![oQySJMC.png][] spring框架的特点 1 悠悠/ 2022年06月03日 04:38/ 0 赞/ 129 阅读
相关 大数据正式37 大数据正式37 Maven 传统项目存在的弊端 1. 导入jar包得经验丰富 2. 传统项目打包方式不通用,不能很好的支持聚合项 左手的ㄟ右手/ 2022年06月02日 01:46/ 0 赞/ 140 阅读
相关 大数据正式36 大数据正式36 MyBatis的接口形式 注意两点 1. 接口名---namespace值对应 2. 方法名---id一致 淩亂°似流年/ 2022年06月02日 01:12/ 0 赞/ 248 阅读
相关 大数据正式34 大数据正式34 Spring+SpringMVC 小例子 效果图 ![hsIEQmd.png][] 功能说明 川长思鸟来/ 2022年06月02日 00:16/ 0 赞/ 257 阅读
还没有评论,来说两句吧...