快速业务通道

Servlet简介 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
提供一些动态的数据。我们先假设数据是通过GET方法发送的,这样我们的变量将会被放在Querystring中。如果使用传统CGI编程的话,这要费一些周章,不过使用Servlets时,不少操作是自动的。为了从querysting中得到我们的数据,我们调用了HttpServletRequest对象的getParameter方法,即是:

req.getParameter("")

是你希望得到值的变量名。getParameter返回的值是一个字符串。如果该参数存在但是没有值,getParameter将会返回一个空的字符串。如果这个参数根本不存在,getParameter将会返回NULL。最后,如果你的参数可能有多个值,使用getParameterValues将会返回一个字符串数组。

如果你想通过POST方法发送你的数据呢?实现它与实现get是同样简单的。你只要在该类中加入以下代码:

public void doPost (HttpServletRequest req, HttpServletResponse res)    throws ServletException, IOException     {      doGet(req, res);     }

现在你的Servlet可以同时处理POST和GET数据了。

使用Cookies

Cookies是web开发者最不可以缺少的工具之一。要记录客户端的状态,无需使用非常复杂的处理,一个简单的cookie就可以了,它改变了“无状态的Internet”这种状况。使用它,我们的Servlet可记住每个用户,在他们再次光临时,将会看到一个欢迎他再次来临的个性化页面。

首先,让我们看一下cookie其中一些很有用的get/set函数:

1、getName/setName -毫无疑问,这是一个最重要的set函数,而且你还要经常查找你的cookie名字;

2、getValue/setValue - 另一个重要的函数用来得到和设置cookie的值;

3、getMaxAge/setMaxAge - 让你设置/读取cookie的生存时间;

4、getComment/setComment - 读取/关联cookies的注释;

5、getSecure/setSecure - 一个布尔值,用来设定你的cookie是否经由SSL发送

为了在我们的cookie中存储数据,我们必须:

1、初始化一个cookie对象

2、设置它的属性

3、发送cookie

Servlet简介(3)

时间:2011-01-15

为了从我们的cookie中接收数据,我们必须:

1、由用户的请求中接收所有的cookies

2、从中查找出你要用到的cookie

3、得到你cookie的值;

好,让我们看看如何在我们的Servlet中加入cookie创建的功能:

import java.io.*;    import javax.servlet.*;    import javax.servlet.http.*;    public class HelloUser extends HttpServlet {    public void doGet (HttpServletRequest req, HttpServletResponse res)    throws ServletException, IOException    {     String User = req.getParameter("User");     int OneYear = 60*60*24*365;     file:// Let抯 instantiate our cookie     Cookie UserNameCookie = new Cookie("Username", User);     // We also want to set our cookie to live for a year     UserNameCookie.setMaxAge(OneYear);     // Finally, let抯 send the cookie off     response.addCookie(UserNameCookie);     res.setContentType("text/html");     ServletOutputStream out = res.getOutputStream();     out.println("");     out.println("");     out.println("");     out.println(" <h1>Hello " + User + "!</h1>");     out.println("");    }    public void doPost (HttpServletRequest req, HttpServletResponse res)    throws ServletException, IOException    {      doGet(req, res);     }

很简单吧。不过,我们还要注意一些问题。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号