您的位置 首页 java

Java之道丨用Session简单实现购物车功能示例代码

HomeServlet:

@WebServlet({ “/HomeServlet”, “/home” })

public class HomeServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public HomeServlet() {

super ();

}

protected void doGet(HttpServlet request request, HttpServletResponse response) throws ServletException, IOException {

request.setCharacterEncoding(“utf-8”);

response.setContentType(“text/html;charset=utf-8”);

PrintWriter out = response.getWriter();

out.print(“<h2>书单</h2><hr/><br/>”);

out.print(“人类简史<a href='”+request.getContextPath()+”/addCartTip?id=1′>加入购物车</a><br/>”);

out.print(“未来简史<a href='”+request.getContextPath()+”/addCartTip?id=2′>加入购物车</a><br/>”);

out.print(“世界简史<a href='”+request.getContextPath()+”/addCartTip?id=3′>加入购物车</a><br/>”);

out.print(“时间简史<a href='”+request.getContextPath()+”/addCartTip?id=4′>加入购物车</a><br/>”);

out.print(“<a href='”+request.getContextPath()+”/show/cart’>查看购物车</a><br/>”);

}

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

doGet(request, response);

}

}

AddCartTipServlet:

@WebServlet({ “/AddCartTipsServlet”, “/addCartTip” })

public class AddCartTipsServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public AddCartTipsServlet() {

super ();

}

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

request.setCharacterEncoding(“utf-8”);

response.setContentType(“text/html;charset=utf-8”);

Http Session session = request.getSession();

List<String> list = (List<String>) session.getAttribute(“cart”);

if (list== null ){

list= new ArrayList<>();

}

String id = request.getParameter(“id”);

list.add(id);

session.setAttribute(“cart”, list);

System.out.println(list.toString());

response.getWriter().println(“已加入购物车<br/>”

+ “<a href='”+request.getContextPath()+”/home’>继续购物</a><br/>”

+ “<a href='”+request.getContextPath()+”/show/cart’>查看购物车</a><br/>”);

}

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

doGet(request, response);

}

}

ShowCartSevlet:

@WebServlet({ “/ShowCartServlet”, “/show/cart” })

public class ShowCartServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public ShowCartServlet() {

super ();

}

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

request.setCharacterEncoding(“utf-8”);

response.setContentType(“text/html;charset=utf-8”);

PrintWriter out = response.getWriter();

List<String> list = (List<String>)request.getSession().getAttribute(“cart”);

if (list!= null ){

out.print(“你的购物清单:<br/>”);

for (String string : list) {

out.println(DBUtils.findById(string)+”<br/>”);

}

out.println(“<br/><a href='”+request.getContextPath()+”/home’>继续购物</a><br/>”);

} else {

out.println(“你还没有将商品添加到购物车<br/>”

+ “<a href='”+request.getContextPath()+”/home’>返回商品列表</a><br/>”);

}

}

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

doGet(request, response);

}

}

DBUtils:存储着商品信息

public class DBUtils {

private static Map<String,String> map = new HashMap<>();

static {

map.put(“1”, “人类简史”);

map.put(“2”, “未来简史”);

map.put(“3”, “世界简史”);

map.put(“4”, “时间简史”);

}

public static String findById(String id){

return map.get(id);

}

}

文章来源:智云一二三科技

文章标题:Java之道丨用Session简单实现购物车功能示例代码

文章地址:https://www.zhihuclub.com/183054.shtml

关于作者: 智云科技

热门文章

网站地图