Request(响应)

本文详细介绍了Servlet中的Request和Response对象,包括Request对象的继承体系、获取请求数据的方法,如请求行、请求头、请求体,以及解决中文乱码问题的策略。同时,还讨论了Request转发的特点和实现方式。
摘要由CSDN通过智能技术生成


        Request Response对象由Web服务器创建
        Request 使用request对象来获取请求数据
        Response 使用response对象来设置响应数据
        
        
        Request继承体系
            ServletRequest---》Java提供的请求对象根接口
            ↑
            HttpServletRequest---》Java提供的对Http协议封装的请求对象
            ↑
            RequestFacade----》Tomcat定义的实现类
            
        Request获取请求数据
        *请求数据分为三部分
            1.请求行:GET/web-demo/findOne?username=zhangsan HTTP/1.1
            *String getMethod():获取请求方式GET
            *String getContexPath():获取虚拟目录(项目访问路径):/requset
            *StringBuffer getRequestURL():获取URL(统一资源定位符):http://localhost:8080/requset/req1
            String getRequestURI(统一资源标识符):/requset/req1
            String getQueryString():获取请求参数(GET方式):username=username=zhangsan&password=123
            
            
            2.请求头 User-Agent:Mozilla/5.0 Chrome/91.0.4472.106
            String getHeader(String name):根据请求头名称 获取值
            

@WebServlet("/req2")
public class demo2 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //来获取客户端浏览器的版本
        String header = req.getHeader("user-agent");
        //客户端的ip地址
        String ip = req.getRemoteAddr();
        System.out.println("ip地址为:"+ip);
        System.out.println(header);//Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36
        if (header.contains("Chrome")){
            System.out.println("我是谷歌浏览器");
        }else if (header.contains("Firefox")
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值