我很像回答你的问题,可是我一次都没有用过cookie,肯定还没你懂,没办法,兄台,等等吧,一定有人回答你的问题的。

解决方案 »

  1.   

    你想达到什么效果? 你想怎样用Cookie? 请讲明白一点。
    不过看了你的程序,发现一些小问题,帮你修改了一下。
    这个程序第一次执行应该显示 No Cookie: Check_User
    因为Cookie还没有加到你的硬盘中,
    当你刷新一下,应该显示 Found the Cookie: Check_User = miqier
    因为这时Cookie已经加进去了。import javax.servlet.http.*;
    import javax.servlet.*;
    import java.util.*;
    import java.io.*;public class check extends HttpServlet{
      //servlet不需要构造函数,最好有init()
      public void init( ServletConfig config ) throws ServletException{  
        super.init( config );
      }
      public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, java.io.IOException
      {
         try{
    Cookie userCookie = new Cookie("Check_User", "miqier");
    response.addCookie(userCookie);
    Cookie[] cookies = request.getCookies();
    Cookie cookie = null; //这里声明一次,以免在for中多次声明
    int cookieLength = cookies.length; //这里取一次长度,以免在for中每次都取 
    String s1 = null;
    for(int i=0; i < cookieLength; i++) 
    {
    cookie = cookies[i];
    if (cookie.getName().equals("Check_User"))
    s1 = cookie.getValue();
    } //这里把addCookie的结果显示出来
    PrintWriter pw = response.getWriter();
    if(s1==null){
    pw.println("No Cookie: Check_User");
    }else{
    pw.println("Found the Cookie: Check_User = " + s1);
    }
         }catch(Exception e){
             e.printStackTrace();
         }
      }
    }
      

  2.   

    为什么
    if(s1==null){
    pw.println("No Cookie: Check_User");
    总不能很好的执行呢,难道有时候s1不是NULL,但如果为Check_User赋值以后,下边的总是正常的。
      

  3.   

    搞定这个:
    http://www.csdn.net/expert/topic/1004/1004416.xml?temp=.9450647
      

  4.   

    我看了,这个程序中,如果不能cookie一个值的话,后边的运行就会有问题,甚到于不运行。这是什么原因?