zoukankan      html  css  js  c++  java
  • JSP学习笔记(二)

    JSP内置对象

    1. request对象
    2. response对象
    3. session对象
    4. application对象
    5. out对象

    有些对象不用声明就可以在JSP页面的Java程序片和表达式部分使用,这就是JSP的内置对象

    1.request对象

    request对象是实现了ServletRequest接口类的一个实例

    [1].HTTP请求

    HTTP通信协议是用户与服务器之间一种提交信息与响应信息的通信协议,其中request封装了用户提交的信息,即请求。
    HTTP请求包括请求行头域和可能的信息体,如:

    GET/hello.htm HTTP/1.1
    Host: localhost:8080
    accept-encoding: gzip, deflate
    

    第一行是请求行,其中GET是请求行规定的请求方法,hello.htm是请求的资源,HTTP/1.1是使用的HTTP协议的版本。
    第二行是头(header),是请求资源文件所在的地址。
    第三行也是头(header),是告诉服务器端:我的浏览器支持gzip和deflate格式的网页压缩格式哦

    [2].获取用户提交的信息

    <form action = "abc.jsp" method = "post">
    			<input type = "text" name = "boy" value = "ok">
    			<input type = "submit" value = "提交">
    </form>
    

    用户向abc.jsp提交表单,而我们在abc.jsp中使用:
    request.getParameter(“boy”)就可以获取name为boy的文本输入框的内容

    上一章中的 <jsp: param name = “” value = “”> 也可以通过这种方式来获取

    为了防止获取的中文信息乱码,可以对request设置编码:

    request.setCharacterEncoding("utf-8");
    

    2.response对象

    response对象对用户的请求作出动态响应,向用户发送数据

    [1]动态响应contentType属性

    response.setContentType("application/msword; charset = utf-8");
    

    例如让用户点击保存当前页面为word文档,则在用户点击后设置该属性,此时用户浏览器就会启用word来显示或保存当前页面

    [2]HTTP响应

    响应由状态行开始,可以包含几个头即可能的信息体,如:
    请求成功,则返回"HTTP/1.1 200 OK"
    请求失败,则返回"HTTP/1.1 404 Object Not Found"

    [3]response重定向

    response.sendRedirect(“url”);即跳转页面到url

    注:详细过程:redirect 会首先发一个response给浏览器,然后浏览器收到这个response后再发一个requeset给服务器,服务器接收后发新的response给浏览器。这时页面从浏览器获取来的是一个新的request。这时,在原来跳转之前的页面用request.setAttribute存的东西都没了,如果在当前的新页面中用request.getAttribute取,得到的将会是null。这种方式的跳转会改变浏览器的地址栏中的url地址。

    addHeader(String head,String value);
    setHeader(String head,String value);
    用来动态添加新的响应头和头的值,如果添加的头已经存在,则覆盖

    3.session对象

    session是实现了HttpSession接口类的一个实例

    [2]

    当一个用户首次访问Web服务目录中的一个JSP页面时,Tomcat服务器产生一个session对象,这个对象调用相应的方法可以存储用户在访问该Web服务目录中各页面期间提交的各种信息,如姓名和性别等等。
    这个session对象被分配了一个String类型的id号,Tomcat服务器同时将这个id号发送到用户端,存放在用户的Cookie中。
    不同用户之间的session对象互不相同

    [3]session对象与URL重写

    如果用户端不支持或禁用了Cookie,那么,JSP页面可以通过URL重写来实现session对象的唯一性,就是当用户从一个页面重新连接到一个页面时,通过向这个新的URL添加参数,把session对象的id传递过去,例如如果想跳转到second.jsp页面,代码实现如下:

    String str = response.encodeRedirectURL("second.jsp");  //重写
    response.sendRedirect(str);
    

    4.application对象

    不同Web服务目录下的application不同

    5.out对象

    out.println和out.print的区别是println会向缓存区写入一个换行,但是浏览器不识别该换行

  • 相关阅读:
    ASP.NET MVC 实现二级域名(泛域名)
    linq to sql 语句基本查询(3):Select和Count/Sum/Min/Max/Avg
    DataSet用法详细
    MVC中返回Json的几种声明方式
    利用索引提高SQL Server数据处理的效率
    嫁给以下十种男人的女人离“地狱”就不远了
    Thinkpad x200 X201拆机换风扇教程 实图
    笔记一则
    冬季谨防胃病复发 放松精神吃温热食物
    就是这样给X200加内存的(申精)
  • 原文地址:https://www.cnblogs.com/fatmanhappycode/p/12231209.html
Copyright © 2011-2022 走看看