实例详解JSP内置对象

2008-02-23 07:51:12来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  jsp九种内置对象:request, reponse, out, session, application, config, pagecontext, page, exception.

  一.request对象:该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交信息。

  1.Request对象可以使用getParameter(string s)方法获取该表单通过text提交的信息。如:

Request.getParameter(“boy”)

  例:request1.jsp:

<%@ page contentType="text/html;charset=GB2312" %>

<HTML>

<BODY bgcolor=green><FONT size=1>

  <FORM action="tree.jsp" method=post name=form>

    <INPUT type="text" name="boy">

    <INPUT TYPE="submit" value="Enter" name="submit">

  </FORM>

</FONT>

</BODY>

</HTML>

  tree.jsp:

<%@ page contentType="text/html;charset=GB2312" %>

<HTML>

<BODY bgcolor=green><FONT size=1> 

<P>获取文本框提交的信息:

  <%String textContent=request.getParameter("boy");

  %>

<BR>

  <%=textContent%>

<P> 获取按钮的名字:

  <%String buttonName=request.getParameter("submit");

  %>

<BR>

  <%=buttonName%>

</FONT>

</BODY>

</HTML>

  使用request对象获取信息要格外小心,要避免使用空对象,否则会出现NullPointerException异常,所以我们可以作以下处理.

  request3.jsp

<%@ page contentType="text/html;charset=GB2312" %>

<HTML>

<BODY bgcolor=cyan><FONT size=5>

  <FORM action="" method=post name=form>

     <INPUT type="text" name="girl">

     <INPUT TYPE="submit" value="Enter" name="submit">

  </FORM> 

  <%String textContent=request.getParameter("girl");

   double number=0,r=0;

   if(textContent==null)

    {textContent="";

    }

   try{ number=Double.parseDouble(textContent);

     if(number>=0)

       {r=Math.sqrt(number) ;

       out.print("<BR>" String.valueOf(number) "的平方根:");

       out.print("<BR>" String.valueOf(r));

       }

     else

       {out.print("<BR>" "请输入一个正数");

       }

    }

   catch(NumberFormatException e)

    {out.print("<BR>" "请输入数字字符");

    }

  %>

</FONT>

</BODY>

</HTML>

  2.处理汉字信息:当request对象获取客户提交的汉字字符时,会出现乱马问题,必须进行特殊处理。首先,将获取的字符串用ISO-8859-1进行编码,并将编码存放到一个字节数组中,然后再将这个属组转化为字符窜对象即刻。

如:  String textContent=request.getParameter("boy");

   byte b[]=textContent.getBytes("ISO-8859-1");

textContent=new String(b);

  例:tree2.jsp

<%@ page contentType="text/html;charset=GB2312" %>

<MHML>

<BODY> 

<P>获取文本框提交的信息:

  <%String textContent=request.getParameter("boy");

   byte b[]=textContent.getBytes("ISO-8859-1");

   textContent=new String(b);

  %>

<BR>

  <%=textContent%>

<P> 获取按钮的名字:

  <%String buttonName=request.getParameter("submit");

   byte c[]=buttonName.getBytes("ISO-8859-1");

   buttonName=new String(c);

  %>

<BR>

  <%=buttonName%>

</BODY>

</HTML>

  3.常用方法举例:

getProtocol(), getServletPath(), getContentLength(), getMethod(), getRemoteAddr(), getRemoteHost(), getServerName(), getParameterName()

例:

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="java.util.*" %>

<MHML>

<BODY bgcolor=cyan>

<Font size=5> 

<BR>客户使用的协议是:

  <% String protocol=request.getProtocol();

   out.println(protocol);

  %>

<BR>获取接受客户提交信息的页面:

  <% String path=request.getServletPath();

   out.println(path);

  %>

<BR>接受客户提交信息的长度:

  <% int length=request.getContentLength();

   out.println(length);

  %>

<BR>客户提交信息的方式:

  <% String method=request.getMethod();

   out.println(method);

  %>

<BR>获取HTTP头文件中User-Agent的值::

  <% String header1=request.getHeader("User-Agent");

   out.println(header1);

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:构建WAP应用程序开发环境

下一篇:JSP:include 用于构建动态网站的简单 JSP 标记