JSP隐式对象

本文深入探讨JSP中的隐式对象,如out、request、response的使用,以及解决请求中的乱码问题。同时,对比分析了重定向与转发的区别,讲解了如何利用RequestDispatcher实现页面之间的跳转。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


      隐式对象
         WEB容器加载的一组对象,不需要声明和实例化服务器加载时自动定义,所有JSP页面中都能够使用内部对象名称为JSP保留的字
      输入侧输出对象:控制页面输入与输出
          out(输出内容)request(请求信息)response(响应信息)
          URL:HTTP协议/服务器名称/ WEB项目名称/页面
          服务器操作:
              1.TOMCAT服务器把请求封装到请求对象
              2.进行处理请求
              3 。根据处理结果产生响应,并将响应信息封装到响应对象中的
          请求对象函数:
            request.getQueryString(); //获取请求的全部参数(可以用作登录成功返回某一路径)
              String getParameter(String name //参数值);
              String [] getParameterValue(String name)
              Enumeration getparameterNames()//返回枚举类型
                  params.hasMoreElements()//有更多对象,类似于游标
                  params.nextElement()//下个元素
              了request.setAttribute( “UNAME”, “李磊”); //生成键值对
              request.getAttribute( “UNAME”); //根据键得到值
              request.getSession(); // session会话的存储自带Session_id存储在服务器中,产生了一对一的联系

  |--------------------------------------解决乱码--------------------------------------------------------|
              |request.setCharacterEncoding("utf-8");//更改页面的字符编码集 只能解决POST请求的乱码        |
              |//接受参数时进行编码转换                                                                |
            |String s=new String(request.getParameter("name").getBytes("ISO-8859-1"),"gb2312") ;|
              |------------------------------解决乱码----------------------------------------------|


              RequestDispatcher a = request.getRequestDispatcher(“index.jsp”);
              // RequestDispatcher是一个Web资源的包装器,可以用来把当前请求传递到该资源,或者把新的资源包括到当前响应中               .//
              RequestDispatcher接口中定义了两个方法:include / forward
a.forward (请求,响应);
        response对象函数:
            String setContentType()//设置作为响应生成的内容的类型和字符编码
          

 |------------------------------重定向与转发的区别--------------------------------------|
            |//转发:在服务器端进行调整,浏览器地址栏不发生变化                          |
            |    两个页面是使用的是同一个Request和Response对象                        |
            |//重定向:在客户端进行的转向,浏览器地址栏显示当前页面的路径      |
            |------------------------------重定向与转发的区别-------------------------------------|


            sendRedirect(“url”)//页面重定向//重定向:在客户端进行的转向,浏览器地址栏显示当前页面的路径
            RequestDispatcher 
            //转发:在服务器端进行调整,浏览器地址栏不发生变化,两个页面是使用的是同一个请求和响应对象
            RequestDispatcher a = request.getRequestDispatcher(“welcome.jsp”);
            a.forward(请求,响应);
              //因为request是隐式对象,所以能直接通过请求调用
          out对象
              out.print()//可以输出任何数据类型,包括方法的运行结果
              out.write()//输出与字符相关的参数是数字时,输出的时数字对应的ASC码
              out.println()//换行输出在HTML中解析成空格,所以在HTML中不能换行输出
              
      作用域对象:
          session application config
      request.getMethod(); //获取提交请求的方式request.getProtocol(); //获取请求的协议
            request.getRequestURL(); //获取请求目标网络路径request.getServletPath(); //获取请求目标的在项目中的相对路径
            request.getServerName(); //获取服务器名称/ ip request.getServerPort(); //获取服务器端口号
            request.getRemoteAddr(); //客户端IP request.getRemoteHost(); //客户端主机
            request.getCharacterEncoding(); //对请求编码request.getRequestURI(); //获取请求目标的相对路径
   - >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值