httpServletResquire 和httpServletResponse
package com.bjsxt.servlet.request;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ServeltRequest
*/
@WebServlet("/ServeltRequest")
public class ServeltRequest extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//请求信息
//请求行(请求方式,资源路径,协议和版本号)
getrequestline(req,resp);
//请求头
//请求实体内容
//获取网络信息
}
private void getrequestline(HttpServletRequest req, HttpServletResponse resp) {
System.out.println("ServeltRequest.getrequestline(获取请求方式):"+req.getMethod());
System.out.println("ServeltRequest.getrequestline(资源路径uri):"+req.getRequestURI());
System.out.println("ServeltRequest.getrequestline(资源路径url):"+req.getRequestURL());
System.out.println("ServeltRequest.getrequestline(协议):"+req.getScheme());
System.out.println("ServeltRequest.getrequestline(版本号)"+req.getProtocol());
System.out.println("ServeltRequest.getrequestline(项目路径)"+req.getContextPath());
System.out.println("ServeltRequest.getrequestline(请求参数)"+req.getQueryString());
}
}
package com.bjsxt.servlet.response;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//HttpServletResponse:包含所有的响应信息,对象由servlet容器创建
public class ServletResponse extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//响应信息格式
//响应行(响应协议和版本 ,状态吗,状态吗描述)-- 响应行servlet自动处理
//响应头
//设置响应头(同名的响应头会被覆盖)
resp.setHeader("iphone", "iphone7");
resp.setHeader("iphone", "iphone8");
//添加响应头(同名的响应头不会被覆盖)
resp.addHeader("vivo", "vivoX5");
resp.addHeader("vivo", "vivoX6");
//设置浏览器的解码格式
//resp.setHeader("content-type", "text/html;charset=utf-8");
//简单写法
resp.setContentType("text/html;charset=utf-8");
//响应的实体内容
PrintWriter pw = resp.getWriter();
pw.print("<html>");
pw.print("<head>");
pw.print("</head>");
pw.print("<body>");
pw.print("<font style='color:red'>");
pw.print("星期天去西单看美女");
pw.print("</font>");
pw.print("</body>");
pw.print("</html>");
}
}
httpServletResquire 和httpServletResponse的更多相关文章
- java web学习总结(八) -------------------HttpServletResponse对象(二)
一.HttpServletResponse常见应用--生成验证码 1.1.生成随机图片用作验证码 生成图片主要用到了一个BufferedImage类,
- java web学习总结(七) -------------------HttpServletResponse对象(一)
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...
- HttpServletResponse常用的方法
所有Servlet响应都实现ServletResponse接口.ServletResponse接口主要有以下方法: (1)从Servlet中可以通过getWriter方法取得PrintWriter对象 ...
- JAVAWEB学习总结 HTTPSERVLETRESPONSE对象(二)
一.HttpServletResponse常见应用--生成验证码 1.1.生成随机图片用作验证码 生成图片主要用到了一个BufferedImage类 步骤: 1. 在内存中创建一张图片 2.得到图片 ...
- JAVAWEB学习总结 HttpServletResponse对象(一)
Web服务器收到客户端(浏览器)的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象,和代表响应的response对象. request和response对象既然代表请求和响 ...
- HttpServletResponse对象 学习
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...
- JavaWeb---总结(七)HttpServletResponse对象(一)
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. request和response对象即然代表请求和响应,那我们 ...
- JavaWeb---总结(八)HttpServletResponse对象(二)
一.HttpServletResponse常见应用--生成验证码 1.1.生成随机图片用作验证码 生成图片主要用到了一个BufferedImage类, 生成随机图片范例: 1 package gacl ...
- HttpServletResponse
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...
随机推荐
- plsql developer 安装
PLSQL Developer 安装分以下几步: 一.下载Oracle客户端 PLSQL Developer是通过oracle client连上Oracle server的. http://www.o ...
- hdu6397 Character Encoding 母函数解约束条件下多重集
http://acm.hdu.edu.cn/showproblem.php?pid=6397 原问题的本质是问m个元素的多重集S,每一种类型的对象至多出现n-1次的S的k组合的个数是多少? 等价于 x ...
- sed中支持变量的处理方法
1.eval sed ’s/$a/$b/’ filename2.sed "s/$a/$b/" filename3.sed ’s/’$a’/’$b’/’ filename 4.sed ...
- nginx-upstream-bio/nio/netty-zuul2-apigateway-openresty-orange-lua-docker
upstream_addr等到走了一些弯路,才发现nginx的upstream本来就有一个upstream_addr的模块,一下子我觉得找到了方向,不过看这个变量的说明,发现它主要用在记录log上面, ...
- [potatos][flex][TBC] 语义分析词法分析 flex
FLEX: The Fast Lexical Analyzer https://github.com/westes/flex 这并不是我的人生中第一次遇见flex,好多工程中,我都发现他们用到了fle ...
- LeetCode 463 Island Perimeter 解题报告
题目要求 You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 rep ...
- Java之旅_高级教程_网络编程
摘自:http://www.runoob.com/java/java-networking.html JAVA网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来. j ...
- NumPy 广播机制(Broadcasting)
一.何为广播机制 a.广播机制是Numpy(开源数值计算工具,用于处理大型矩阵)里一种向量化数组操作方法. b.Numpy的通用函数(Universal functions) 中要求输入的两个数组sh ...
- Java+selenium 如何定位下拉框select
场景:需要进行下拉选择定位元素. 一.select菜单 select也是比较常见的,selenium封装了以下方法, 创建select WebElement selector = dr ...
- gitlab访问用户安装的postgresql数据库
1.先将gitlab默认安装的postgresql的数据库中的数据,导入到用户安装的postgresql数据 用Navicat迁移数据.函数不用迁移. 2.配置gitlab对postgresql数据库 ...