web开发日记-JSP内置对象

JSP内置对象

  • out对象:客户端浏览器输出各种数据
  • request对象:封装了请求的各种信息
  • response对象:封装了服务器的响应信息
  • exception对象:封装了jsp执行过程中发生的异常和错误信息
  • config对象:封装了application的配置信息
  • page对象:指向了当前页面
  • session对象:用来保存会话信息,也就是说它可以在同一用户的不同请求之间共享数据。
  • application对象:代表了当前应用的上下问,不同用户之间可以共享信息。
  • pageContext对象:提供了对jsp页面所有对象以及命名空间的访问。

out对象

out对象除了对页面输出数据外,还可以管理输出缓冲区。
默认的缓冲区大小是8kb,通过page编译指令可以更改缓冲区大小,如
<%@ page buffer = "10kb"%>

<%
    out.println("text)");
    out.print("elijah");
    out.newLine();
    out.println("缓冲区大小:"+out.getBufferSize());
    out.println("
"); out.println("当前缓冲区剩余字节数目:" + out.getRemaining()); out.flush();//刷新缓冲区 冲入页面显示 out.clearBuffer();//清空缓冲区 %>

Request对象

request对象大多数方法都是获取客户端提交的数据,如表单,参数,ip,cookie等。

请求方法名<%=request.getMethod()%>
请求资源名<%= request.getRequestURI()%>
请求使用的协议<%=request.getProtocol()%>
请求的服务器IP<%=request.getServerName()%>
请求的服务器端口<%= request.getServerPort()%>
客户端的IP<%=request.getRemoteAddr()%>
客户端的主机名<%=request.getRemoteHost()%>
表单提交的参数<%=request.getParameter("username")%>//访问表单数据 需要用getParameter方法 然后对应表单中的name关键字

Request对象使用

创建三个jsp

register.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %>


    Title


用户名 <%--技能--%> <%--java--%> <%--
python--%> <%--
ruby--%> <%--
node.js--%> <%--
--%>

do_register.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    String userName = request.getParameter("userName");
    System.out.println("tag");
    String skills = "";
    String[] skillAll = request.getParameterValues("skills");
    if (skillAll!= null&&skillAll.length>0) {
        for (String s : skillAll) {
            skills = s+skills;
        }
    }
    request.setAttribute("userName", userName);
//添加一个额外参数
%>

welcome.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


welcome!
<%=request.getAttribute("userName")//获取属性

%>


Response对象详解



    Title


<%
    response.setHeader("Cache-Control", "no-cache");//用于设置网页的缓存策略,no-cache 则表示不会缓存数据
    response.setIntHeader("Refresh",2);//设置头信息 网页每隔两秒刷新一次 设置了一个刷新头
    out.println("date is = " +
            new java.util.Date().toString() + "
"); response.sendRedirect("http://www.google.com");//response重定向指令 %>

cookie:是由服务器发送的纯文本信息,发送到浏览器后,浏览器将网址和cookie一同提交到服务器。浏览器检查cookie可以识别用户状态等。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    Cookie myCookie = new Cookie("elijah", "coder");//设置cookie键值对
    myCookie.setMaxAge(3600);//设置cookie最大存活时间
    response.addCookie(myCookie);//设置cookie
%>


你可能感兴趣的:(web开发日记-JSP内置对象)