说明:根据蓝色字体索引,红色字体为重要Cookie相当于一对键值对(String–String),Session相当于一个集合类:ArrayList等,Session.setAttribute(String,Object)ServletRequest(接口)HttpServletRequest(接口)ServletResponse(接口)HttpServletResponse(接口)把servlet-api.jar文件放在C:\ProgramFiles\Java\jdk1.6.0_10\lib目录下/////cookie操作importjavax.servlet.http.*;importjava.io.*;publicclassCookieTest1extendsHttpServlet{publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres){res.setContentType(text/html;charset=gbk);PrintWriterpw=res.getWriter();//1.先在服务器端创建一个cookieCookiemyCookie=newCookie(color1,red);//2.该cookie存在的时间,SetsthemaximumageofthecookieinsecondsmyCookie.setMaxAge(30);//如果你不设置存在时间,那么该cookie将不会保存//3.将该cookie写回到客户端res.addCookie(myCookie);pw.println(已经创建了cookie);}}-------------------------------------------------------------------------------------------------Servlet跳转当然,在servlet中,一般跳转都发生在doGet,doPost等方法里面。1)redirect方式response.sendRedirect(/a.jsp);页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:response.sendRedirect(URL);跳转后浏览器地址栏变化。这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。2)forward方式RequestDispatcherdispatcher=request.getRequestDispatcher(/a.jsp);dispatcher.forward(request,response);Servlet页面跳转的路径是相对路径。forward方式只能跳转到本web应用中的页面上。跳转后浏览器地址栏不会变化。使用这种方式跳转,传值可以使用三种方法:url中带parameter,session,request.setAttribute-------------------------------------------------------------------------------------------------//如何创建cookie案例//1.现在服务器端创建一个cookieCookiemyCookie=newCookie(color1,red);//2.该cookie存在的时间myCookie.setMaxAge(30);//如果你不设置存在时间,那么该cookie将不会保存,“秒”//3.将该cookie写回到客户端res.addCookie(myCookie);-------------------------------------------------------------------------------------------------//如何读取cookie案例Cookie[]allCookies=req.getCookies();inti=0;//如果allCookies不为空...if(allCookies!=null){//从中取出cookiefor(i=0;iallCookies.length;i++){//依次取出Cookietemp=allCookies[i];if(temp.getName().equals(color1)){//得到cookie的值Stringval=temp.getValue();pw.println(color1=+val);break;}}if(allCookies.length==i){//这个不懂,是不是遍历完都找不到color的值?pw.println(cookie过期);}}else{pw.println(不存在color1这个cookie/或是过期了!);}-------------------------------------------------------------------------------------------------//如何删除cookie案例//从客户端得到所有cookie信息Cookie[]allCookies=req.getCookies();inti=0;//如果allCookies不为空...if(allCookies!=null){//从中取出cookiefor(i=0;iallCookies.length;i++){//依次取出Cookietemp=allCookies[i];if(temp.getName().equals(color)){//将该cookie删除temp.setMaxAge(0);response.addCookie(temp);//到这里才算删除了cookiepw.println(删除了color这个cookie);break;}}//确认删除操作pw.println(tdahref=DelUserCl?userid=+ub.getUserId()+onclick=\returnwindow.confirm('确认删除')\删除用户/a/td);//分页处理,提交给本页if(pageNow!=1)pw.println(ahref=wel?pageNowok=+(pageNow-1)+上一页/a);-------------------------------------------------------------------------------------------------//向servletcontext中添加属性//1得到servletcontextServletContextsc=this.getServletContext();//相当于jsp中application上面的this指的是HttpServlet,继承自GenericServlet,它有getServletContext()方法//2添加属性sc.setAttribute(myInfo,我是顺平);//比较session,添加一个sessionHttpSessionhs=req.getSession(true);hs.setAttribute(test,中国人);//安装tomcat默认的时间是30分钟//当然也可以conf目录下的web.xml文件中自己设置时间hs.setMaxInactiveInterval(60*3);//seconds//当然也可以在servletcontext中放入一个对象//CatmyCat=newCat(小明,30);//sc.setAttribute(cat1,myCat);-------------------------------------------------------------------------------------------------//从servletcontext中得到属性//1得到servletcontextServletContextsc=this.getServletContext();//2得到属性和它对应的值Stringinfo=(String)sc.getAttribute(myInfo);//从session中得到属性HttpSessionhs=req.getSession(true);Stringval=(String)hs.getAttribute(test);//得到另外一个属性//CatmyCat=(Cat)sc.getAttribute(cat1);//pw.println(从servletcontext中得到属性cat1他的名字是+//myCat.getName()+他的年龄是+myCat.getAge()+br);-------------------------------------------------------------------------------------------------//session案例---如何删除属性/如何使得session无效//得到和req相关联的session,如果没有就创建sessionHttpSessionht=req.getSession(true);//向session中添加一个属性(String类型的)ht.setAttribute(you,周星星);ht.setAttribute(he,刘德华);pw.println(在没有删除you属性前you的值=+ht.getAttribute(you)+br);//从session中删除you属性//ht.removeAttribute(you);ht.setMaxInactiveInterval(0);//session永远不失效??若setMaxInactiveInterval设置为负值,则表示////该Session永不过期pw.println(删除you属性后you的值=+ht.getAttribute(you)+br);pw.println(删除you属性后he的值=+ht.getAttribute(he)+br);jsp中,用publicvoidinvalidate()方法使session失效(手工)-------------------------------------------------------------------------------------------------//隐藏表单案例--提交界面pw.println(inputtype=hiddenname=sexvalue=+test+br);//隐藏表单案例--接收数据//得到隐藏的性别值Stringsex=req.getParameter(sex);-------------------------------------------------------------------------------------------------//这是我的第一个Serlvet,使用实现servlet接口的方式来开发importjavax.servlet.*;importjava.io.*;importjavax.servlet.Servlet;importjava.io.IOException;publicclassHelloimplementsServlet{//该函数用于初始化该serlvet(类似于类的构造函数)//该函数只会被调用一次(当用户第一次访问该servlet时被调用)publicvoidinit(ServletConfigparm1)throwsServletException{}publicServletConfiggetServletConfig(){}publicvoidservice(Servl