java web笔记——request&response
来源:互联网 发布:linux 分辨率 命令 编辑:程序博客网 时间:2024/05/05 01:39
<request&response细节>
用字节流写数字给浏览器时,要将数字转换成字符串类型 ,否则服务器会将数字当成字符编码编译,服务器默认使用
“ISO-8859-1”编码。
OutputStream out = respose.getOutputStream();
out.write((120+"").getBytes());
byte是基本数据类型,Byte是byte的包装类,是个class。
final为修饰关键字
类被声明为final则此类不能被继承,一个类不能既被声明为final又被声明为abstract。
变量被声明为final则不能被修改,且必须赋初始值。
方法被声明为final则此类只能被使用,不能被重载。
finally为异常处理程序块,不能是否有异常发生,finally中的程序都会被执行,先执行catch语句再执行finally语句。
respose.setHeader("Content-Disposition","attachment;filename=***");
语句中“Content-Disposition”和“content-disposition”都能执行
setHeader()参数不区分大小写
BufferedImage image= new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();
g.fillRect(0, 0, WIDTH, HEIGHT);
g.drawRect(1, 1, WIDTH-2, HEIGHT-2);// x, y, x+width, y+height; 画在image的边界上无法显示边框
java.long.Math.random();返回带正号的double值,该值大于等于0.0且小于1.0
java.util.Random.nextInt(int n);返回一个伪随机数,在0(包括)和n(不包括)之间均匀分布int值;
做好随机验证码图片后可以用JS技术制作“看不清换一张”的动态功能,而不会刷新html表单填写的内容。
请求重定向,浏览器向服务器发送了两次请求,request和response对象分别有两个。
请求重定向,浏览器的地址栏会发生变化,主要应用于登陆场景。
response.sendRedirect("/(项目名)/(文件名)");//相对URL映射地址
sendRedirect()语句相当于
————response.setStatus(302);
response.setHeader("location", "相对URL映射地址");
getOutputStream()和getWriter()两个方法相互排斥,调用了其中一个就不能再调用另一个。
通过getRequestDispatcher()方法转发时,转发到的Servlet与请求转发的Servlet只能同时调用以上相排斥的
方法之一,两个分别调用以上方法时会发生错误:getWriter()/getOutputStream() has already been called
for this response.
注意!服务器把jsp文件写给浏览器会自动调用getWriter()方法
request.getRequestURL();返回请求访问的http地址
request.getRequestURI();返回请求访问的web资源地址
request.getQueryString();返回请求行中的参数部
request.getRemoteAddr();返回发出请求客户机的IP地址
request.getRemoteHost();返回客户机完整主机名
request.getRemotePort();返回客户机所使用的网络端口号
request.getLocalAddr();返回web服务器的ip地址
request.getLocalName();返回web服务器的主机名
request.getMethod();返回客户机请求的方式
request.getHeader()方法中忽略请求头字段参数的大小写
String[] values = request.getParameterValues("name");使用需要考虑values为null的情况,否则可能出错。
request.getInputStream()方法用在文件上传。
request.getHeader("referer")可用作防盗链,直接在浏览器地址输入访问,referer返回的值为NULL
request.setCharacterEncoding("UTF-8");对请求参数进行中文编码,告诉服务器用什么编码打开字节流,只对
POST提交方式有效,对GET方式无效。
GET方式需如下转换:
String name = new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");
超链接中提交的数据包含中文,一定要url编码(GET方式)
request对象同时也是一个域对象。
forward()和include()实现了多个WEB应用资源间的协作。
如果在调用RequestDispatchar.forward(request,response)方法之前,在Servlet中写入的部分已经被真正的传输
到了客户端,forward()方法将抛出IllegalServletException。
若调用forward()方法之前向Servlet引擎的缓冲区(response)写入了数据,缓冲区的数据没有被真正提交到客户端
就可以正常执行forward()。
forward()方法执行时会清空原来写入到输出缓冲区的内容,但已写入到HttpServletResponse对象中的响应头字段
信息会保持有效。
执行了forward()后再向response中写入数据不会有效。
转发只有一次请求,只有一个request和一个response,转发涉及的多个资源共享同一个request和response
转发,浏览器地址栏不发生变化。
RequestDispatchar.include()方法使用:
request.getRequestDispatchar("/practice/head.html").include(request, response);
response.getWriter("Hello");
request.getRequestDispatchar("/practice/foot.html").include(request, response);
一般写资源地址时,建议以"/"开头,
如果这个地址给浏览器用,"/"代表网站下web应用根目录 (URL映射地址)
如果这个地址给服务器用,"/"代表WEB应用根目录 (硬盘地址)
客户端提交的请求方式是大写的GET,POST。(request.getMethod()的返回值)
用字节流写数字给浏览器时,要将数字转换成字符串类型 ,否则服务器会将数字当成字符编码编译,服务器默认使用
“ISO-8859-1”编码。
OutputStream out = respose.getOutputStream();
out.write((120+"").getBytes());
byte是基本数据类型,Byte是byte的包装类,是个class。
final为修饰关键字
类被声明为final则此类不能被继承,一个类不能既被声明为final又被声明为abstract。
变量被声明为final则不能被修改,且必须赋初始值。
方法被声明为final则此类只能被使用,不能被重载。
finally为异常处理程序块,不能是否有异常发生,finally中的程序都会被执行,先执行catch语句再执行finally语句。
respose.setHeader("Content-Disposition","attachment;filename=***");
语句中“Content-Disposition”和“content-disposition”都能执行
setHeader()参数不区分大小写
BufferedImage image= new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();
g.fillRect(0, 0, WIDTH, HEIGHT);
g.drawRect(1, 1, WIDTH-2, HEIGHT-2);// x, y, x+width, y+height; 画在image的边界上无法显示边框
java.long.Math.random();返回带正号的double值,该值大于等于0.0且小于1.0
java.util.Random.nextInt(int n);返回一个伪随机数,在0(包括)和n(不包括)之间均匀分布int值;
做好随机验证码图片后可以用JS技术制作“看不清换一张”的动态功能,而不会刷新html表单填写的内容。
请求重定向,浏览器向服务器发送了两次请求,request和response对象分别有两个。
请求重定向,浏览器的地址栏会发生变化,主要应用于登陆场景。
response.sendRedirect("/(项目名)/(文件名)");//相对URL映射地址
sendRedirect()语句相当于
————response.setStatus(302);
response.setHeader("location", "相对URL映射地址");
getOutputStream()和getWriter()两个方法相互排斥,调用了其中一个就不能再调用另一个。
通过getRequestDispatcher()方法转发时,转发到的Servlet与请求转发的Servlet只能同时调用以上相排斥的
方法之一,两个分别调用以上方法时会发生错误:getWriter()/getOutputStream() has already been called
for this response.
注意!服务器把jsp文件写给浏览器会自动调用getWriter()方法
request.getRequestURL();返回请求访问的http地址
request.getRequestURI();返回请求访问的web资源地址
request.getQueryString();返回请求行中的参数部
request.getRemoteAddr();返回发出请求客户机的IP地址
request.getRemoteHost();返回客户机完整主机名
request.getRemotePort();返回客户机所使用的网络端口号
request.getLocalAddr();返回web服务器的ip地址
request.getLocalName();返回web服务器的主机名
request.getMethod();返回客户机请求的方式
request.getHeader()方法中忽略请求头字段参数的大小写
String[] values = request.getParameterValues("name");使用需要考虑values为null的情况,否则可能出错。
request.getInputStream()方法用在文件上传。
request.getHeader("referer")可用作防盗链,直接在浏览器地址输入访问,referer返回的值为NULL
request.setCharacterEncoding("UTF-8");对请求参数进行中文编码,告诉服务器用什么编码打开字节流,只对
POST提交方式有效,对GET方式无效。
GET方式需如下转换:
String name = new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");
超链接中提交的数据包含中文,一定要url编码(GET方式)
request对象同时也是一个域对象。
forward()和include()实现了多个WEB应用资源间的协作。
如果在调用RequestDispatchar.forward(request,response)方法之前,在Servlet中写入的部分已经被真正的传输
到了客户端,forward()方法将抛出IllegalServletException。
若调用forward()方法之前向Servlet引擎的缓冲区(response)写入了数据,缓冲区的数据没有被真正提交到客户端
就可以正常执行forward()。
forward()方法执行时会清空原来写入到输出缓冲区的内容,但已写入到HttpServletResponse对象中的响应头字段
信息会保持有效。
执行了forward()后再向response中写入数据不会有效。
转发只有一次请求,只有一个request和一个response,转发涉及的多个资源共享同一个request和response
转发,浏览器地址栏不发生变化。
RequestDispatchar.include()方法使用:
request.getRequestDispatchar("/practice/head.html").include(request, response);
response.getWriter("Hello");
request.getRequestDispatchar("/practice/foot.html").include(request, response);
一般写资源地址时,建议以"/"开头,
如果这个地址给浏览器用,"/"代表网站下web应用根目录 (URL映射地址)
如果这个地址给服务器用,"/"代表WEB应用根目录 (硬盘地址)
客户端提交的请求方式是大写的GET,POST。(request.getMethod()的返回值)
0 0
- java web笔记——request&response
- Java学习笔记——request&response
- java web笔记之认识request和response
- java WEB response、request对象
- Java.Web - Response、Request 随笔
- java web服务器中的 request和response
- Java Web之四 Response Request
- JAVA WEB知识总结之一--response&&request
- WEB-request&response
- response request 笔记
- request&response笔记
- request&response笔记
- request/response学习笔记
- request和response笔记
- Java进阶学习第十天——request&response
- JAVA Web学习3之request和response
- Java Web(二) Servlet中response、request乱码问题解决
- java web之路 : jsp request/response内置对象
- AndroidMenifest.xml详解(转载)
- 前端的性能优化都有哪些东西?
- Sublime Text sublimelinter 提示php
- IOS中OC与JS互相调用
- sublime text ctags插件安装
- java web笔记——request&response
- 在APM中添加新的mavlink消息
- POJ-3468 A Simple Problem with Integers(Splay实现)
- GoSublime介绍安装配置
- iOS 技能图谱
- hive中不同数据类型存储在Hbase中的格式解析
- Qt 中的有关数据转换 int QString char* QByteArray 的转换
- 注入式框架Butterknife(黄油刀)的使用
- GoSublime 快捷键