A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© cccyj 初级黑马   /  2018-12-29 17:29  /  429 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

                 day15笔记Response&Request







请求转发特点:

1.一次请求

2.只能访问内部资源

3.跳转时地址栏不发生改变



getParameter和getAttribute不是一回事

getParameter获取的是浏览器请求体中的请求参数

getAttribute获取的是request域中的共享资源



ps: request域只针对与一次请求





Request(发送数据到浏览器)

获取数据

请求转发

数据共享

获取ServletContext域对象



四大域对象

ServletContext         针对整个项目(从服务器启动到服务器关闭\\)

HttpSesslon                  针对于一次对话

HttpServletRequest  针对一次请求

RageContext                  只针对当前页面







BeanUtils工具类:

配合request中的getParameterMap方法

request.getParameterMap返回map

new 类名 返回类对象

BeanUtils.populate(类对象 , map集合)



需要注意的是类中的变量名称要与表单的那么属性一致



响应(把数据回写到服务器)

HTTP常见状态码

200(表示成功)

302(重定向)/304(告诉浏览器访问本地缓冲)

404(路径错误)/405(没有实现对应的请求方法)

500(代码写错)



响应头

Context-type  告诉浏览器用什么编码解析

Context-Dispositon  以附件形式解析,(下载)



response

重定向

基础方法

setStatus(302)

setHeader("location" , "路径")



更简洁的方法

setRedirect("路径")

重定向和请求转发的区别

redirect地址栏会发生改变,forward地址栏不改变

redirect可以定向任意资源,forward只能转发到内部资源

redirect不可以用request共享数据,forwar可以

redirect是两次请求,forward是一次请求



路径       

绝对路径:

用 / 开头

在不同情况下有不同的绝对路径

request域中不用写虚拟路径

其他情况下要写

推荐使用request中getContextPath()方法动态获取虚拟路径

相对路径:

用 . 开头

两个 . 代表上一级目录











































0 个回复

您需要登录后才可以回帖 登录 | 加入黑马