A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© tfy 中级黑马   /  2012-12-25 21:44  /  2425 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.itheima.session.app1;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.itheima.domain.Book;
//查看购物车中的所有商品
public class ShowCartServlet extends HttpServlet {

        public void doGet(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, IOException {
                response.setContentType("text/html;charset=UTF-8");
                PrintWriter out=response.getWriter();
               
                //
                HttpSession session=request.getSession(false);
                if(session==null){
                        out.write("对不起,您还没有购买任何东东");
                        //session.setAttribute("JSESSIONID", "没有ID");
                        //out.write(session.getId());//输出Session的jJSESSIONID
                        System.out.println("Session====="+session);
                        return;
                }
                List<Book> cart=(List<Book>) session.getAttribute("cart");
                if(cart==null){   out.write("对不起,您还没有购买任何商品!!!!"); return;}
                if(cart==null && cart.size()<1){
                        out.write("对不起,您还没有购买任何商品!!!!");
                        out.write(session.getId());//输出Session的jJSESSIONID
                        System.out.println(session.getId());
                        return;
                }
                //进行URL重写
                String url=request.getContextPath()+"/servlet/ClearCartServlet";
                 url=response.encodeURL(url);
               
                out.write("您购买的商品如下:<a href='"+url+"'>清空购物车</a><br/>");
                for(Book b:cart){
                        out.write(b.getName()+"<br/>");
                       
                       
                        out.write("输出Session的jJSESSIONID======"+session.getId());//输出Session的jJSESSIONID
                        System.out.println("输出Session的jJSESSIONID======"+session.getId());
                }
                //进行URL重写
                String url2=request.getContextPath()+"/servlet/ShowBooksServlet";
                 url2=response.encodeURL(url2);
                out.write("<br/><a href='"+url2+"'>继续购物</a>");

        }

        public void doPost(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, IOException {

                doGet(request, response);
        }

}


8 个回复

倒序浏览
请教一个问题  我在servlet里面写了这些代码 response.setContentType("text/html;charset=UTF-8");
                PrintWriter out = response.getWriter();
                Cookie cookie=new Cookie("name","jack");
                cookie.setMaxAge(3600);
                cookie.setPath("/day07");
                response.addCookie(cookie);

怎么找不到cookie啊
回复 使用道具 举报
tfy 中级黑马 2012-12-25 21:54:09
藤椅
javax.servlet.http.Cookie@651e95
回复 使用道具 举报
tfy 发表于 2012-12-25 21:54
javax.servlet.http.Cookie@651e95

啥意思啊  我不太懂啊
回复 使用道具 举报
兄弟 你满厉害的啊 代码都自己打的吗 高手啊  请教一下你我上面那个啥问题啊   你能自己搞下截图给我看下嘛 谢谢
回复 使用道具 举报
tfy 中级黑马 2012-12-25 21:59:59
地板
    out.write(cookie+"");
        System.out.println(cookie);
加这两条语句试试
回复 使用道具 举报
tfy 发表于 2012-12-25 21:59
out.write(cookie+"");
        System.out.println(cookie);
加这两条语句试试

这个只是在控制台或者页面显示 没啥意义啊  我是想把我的Cookie添加到我所指定的文件中啊
回复 使用道具 举报
C:\Users\admin\AppData\Local\Microsoft\Windows\Temporary Internet Files  为啥找不到我自己创的那个cookie的文件呗
回复 使用道具 举报
还在吗   我的代码如下 package cn.itcast;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class CookieDemo extends HttpServlet {

       
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, IOException {

                response.setContentType("text/html;charset=UTF-8");
                PrintWriter out = response.getWriter();
                Cookie cookie=new Cookie("name","jack");
                cookie.setMaxAge(3600);
                cookie.setPath("/day07");
                response.addCookie(cookie);
                out.write("输入成功");
               
        }

        public void doPost(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, IOException {

        doGet(request,response);
        }

}
我去访问怎么找不到我的cookie 啊 能指点一下吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马