JSP数据交互(JSP/Servlet第二章)

JSP内置对象

在代码中没有任何地方声明和创建就可以直接使用的对象就是JSP内置对象。下面列举几个常用的内置对象。

  1. out对象
    方法:out.print()、out。println()
    该两个方法可以实现页面的输出显示。
  2. request对象
    常有方法:
  • String getParameter(String name):根据页面表单组件名称获取页面提交数据
  • String getParameterValues(String name):获取一组以相同名称命名的表单组件页面提交数据
  • void setCharacterEncoding(String name):设置编码格式,解决中文乱码
  • RequestDispatcher getRequestDispatcher(String path):用于转发,这里不多介绍
//A页面代码
<div align="center">请输入注册信息
  <form name="form1" method="get" action="reginfo.jsp">
      <table  border="0" align="center">
         <tr> 
           <td>用户名:</td>
           <td><input type="text" name="name"></td>
         </tr>
    <tr> 
           <td height="19">密码:</td>
           <td height="19"><input type="password" name="pwd"></td>
    </tr>
    <tr> 
           <td>信息来源:</td>
           <td> 
      <input type="checkbox" name="channel" value="报刊">报刊 
            <input type="checkbox" name="channel" value="网络">网络<br/> 
            <input type="checkbox" name="channel" value="朋友推荐">朋友推荐 
            <input type="checkbox" name="channel" value="电视">电视
           </td>
         </tr>
         <!-- 以下是提交、取消按钮 -->
         <tr > 
           <td colspan="2" align="center" > 
              <input type="submit" name="Submit" value="提交">
              <input type="reset" name="Reset" value="取消">
           </td>
         </tr>
      </table>
    </form>
 </div>
//A页面表单提交,B页面获得A页面信息,以下为B页面代码
<%
  request.setCharacterEncoding("UTF-8");
  String name = request.getParameter("name");
  String pwd = request.getParameter("pwd");
  String[] channel = request.getParameterValues("channel");
  %>
  <br/>
  <%=name %>
  <br/>
  <%=pwd %>
  <br/>
 <%
  1. response对象
    常有方法:
  • void addCookie(Cookie cookie):向客户端添加Cookie
  • void setContentType(String type):设置HTTP响应的contentType类型
  • void setCharacterEncoding(String name):设置编码格式,解决中文乱码
  • void sendRedireet(String location):将请求重新定位到一个新的url上
  1. session对象
    什么是session:
    Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
    举个栗子:平常在淘宝买东西的时候,如果你没有登录你点击购买的时候让你登录,你登录一次后就可以购买商品,如果你再一次购买商品的时候,再次让你登录这不是很麻烦吗,session常用于这部分工作,一次网页登录后直到session失效前都不用再次登录
    常用方法:
  • String getId():获取sessionid
  • void setMaxInactiveInterval(int interval):设定session的非活动时间
  • int getMaxInactiveInterva():“获取session的有效非活动时间,单位/秒
  • void invalidate():让session失效

include指令

可以将一些多个网页中的重复内容写入一个单独的文件中,然后通过include指令引用该文件
语法:

<%@ include file="应用文件路径"%>

转发和重定向

转发和重定向可以简单的理解为跳转页面,从一个网页到另外一个网页,具体原理请百度

转发和跳转的区别(以下内容为转载@liubin5620)

  1. 转发使用的是getRequestDispatcher0.forword(request,response)方法,重定向使用的是sendRedirect0;
  2. 转发浏览器URL的地址栏不变,重定向:浏览器URL的地址栏改变;
  3. 转发是服务器行为,重定向是客户端行为;
  4. 转发是浏览器只做了一次访问请求。重定向是浏览器做了至少两次的访问请求;
  5. 转发2次跳转之间传输的信息不会丢失,重定向2次跳转之间传输的信息会丢失(request范围) ;
  6. 转发和重定向的选择,重定向的速度比转发慢,因为WEB浏览器还得发出个新的请求, 如果在使用转发和重定向都无所谓的时只能用重定向
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值