首页 > 代码库 > 用session实现简单的购物
用session实现简单的购物
1 package cn.itcast.shopping; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.util.Map; 6 7 import javax.servlet.ServletException; 8 import javax.servlet.http.HttpServlet; 9 import javax.servlet.http.HttpServletRequest;10 import javax.servlet.http.HttpServletResponse;11 12 import cn.itcast.Book;13 import cn.itcast.Db;14 15 public class ListBookServlet extends HttpServlet {16 17 public void doGet(HttpServletRequest request, HttpServletResponse response)18 throws ServletException, IOException {19 20 response.setCharacterEncoding("UTF-8");21 response.setContentType("text/html;charset=UTF-8");22 PrintWriter out = response.getWriter();23 24 out.write("本网站有如下商品:<br/>");25 Map<String,Book> map = Db.getAll();26 for (Map.Entry<String, Book> entry : map.entrySet()) {27 Book book = entry.getValue();28 out.print(book.getName()+"<a href=http://www.mamicode.com/‘/ServletDemo/servlet/BuyServlet?id="+book.getId()+"‘ target=‘_blank‘>购买</a><br/>");29 }30 31 }32 33 public void doPost(HttpServletRequest request, HttpServletResponse response)34 throws ServletException, IOException {35 36 37 }38 39 }
1 package cn.itcast.shopping; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.util.ArrayList; 6 import java.util.List; 7 8 import javax.servlet.ServletException; 9 import javax.servlet.http.HttpServlet;10 import javax.servlet.http.HttpServletRequest;11 import javax.servlet.http.HttpServletResponse;12 import javax.servlet.http.HttpSession;13 14 import cn.itcast.Book;15 import cn.itcast.Db;16 17 //完成购买18 public class BuyServlet extends HttpServlet {19 20 21 public void doGet(HttpServletRequest request, HttpServletResponse response)22 throws ServletException, IOException {23 24 String id = request.getParameter("id");25 Book book = (Book) Db.getAll().get(id);26 27 HttpSession session =request.getSession();28 29 //从Session得到用户名用于保存所有书的集合(购物车)30 List list = (List) session.getAttribute("list");31 if(list==null){32 list = new ArrayList();33 session.setAttribute("list", list);34 }35 list.add(book);36 37 // request.getRequestDispatcher("/servlet/ListCarServlet").forward(request, response);38 response.sendRedirect(request.getContextPath()+"/servlet/ListCarServlet");39 }40 41 public void doPost(HttpServletRequest request, HttpServletResponse response)42 throws ServletException, IOException {43 44 }45 46 }
1 package cn.itcast.shopping; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.util.List; 6 7 import javax.servlet.ServletException; 8 import javax.servlet.http.HttpServlet; 9 import javax.servlet.http.HttpServletRequest;10 import javax.servlet.http.HttpServletResponse;11 import javax.servlet.http.HttpSession;12 13 import cn.itcast.Book;14 15 //显示用户购买商品16 public class ListCarServlet extends HttpServlet {17 18 public void doGet(HttpServletRequest request, HttpServletResponse response)19 throws ServletException, IOException {20 21 response.setCharacterEncoding("UTF-8");22 response.setContentType("text/html;charset=UTF-8");23 PrintWriter out = response.getWriter();24 25 HttpSession session = request.getSession(false);26 if(session==null){27 out.write("您没有购买任何商品!!");28 return;29 }30 31 out.write("您购买了如下商品:<br/>");32 List<Book> list = (List) session.getAttribute("list");33 for(Book book : list){34 out.write(book.getName());35 }36 }37 38 39 public void doPost(HttpServletRequest request, HttpServletResponse response)40 throws ServletException, IOException {41 42 43 }44 45 }
1 package cn.itcast; 2 3 import java.util.LinkedHashMap; 4 import java.util.Map; 5 6 public class Db { 7 private static Map<String, Book> map = new LinkedHashMap(); 8 9 static{10 map.put("1", new Book("1","javaweb开发","Zero","一本好书!!"));11 map.put("2", new Book("2","jdbc开发","one","一本好书!!"));12 map.put("3", new Book("3","spring开发","two","一本好书!!"));13 map.put("4", new Book("4","struks开发","three","一本好书!!"));14 map.put("5", new Book("5","hibernate开发","four","一本好书!!"));15 }16 17 public static Map getAll(){18 return map;19 }20 }
1 package cn.itcast; 2 3 import java.io.Serializable; 4 5 6 public class Book implements Serializable { 7 private String id; 8 private String name; 9 private String author;10 private String description;11 12 public Book(String id, String name, String author, String description) {13 super();14 this.id = id;15 this.name = name;16 this.author = author;17 this.description = description;18 }19 20 public String getId() {21 return id;22 }23 24 public void setId(String id) {25 this.id = id;26 }27 28 public String getName() {29 return name;30 }31 32 public void setName(String name) {33 this.name = name;34 }35 36 public String getAuthor() {37 return author;38 }39 40 public void setAuthor(String author) {41 this.author = author;42 }43 44 public String getDescription() {45 return description;46 }47 48 public void setDescription(String description) {49 this.description = description;50 }51 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。