JAVAEE中用Session简单实现购物车功能示例代码

发布时间 - 2026-01-10 23:21:39    点击率:

Session简单实现购物车功能

这个小程序主要就3个页面,一个商品列表页面(HomeServlet),一个是提示加入购物车页面(AddCartTipServlet),一个是显示购物车清单页面(ShowCartServlet)。

HomeServlet页面:

@WebServlet({ "/HomeServlet", "/home" })
public class HomeServlet extends HttpServlet {
  private static final long serialVersionUID = 1L;

  public HomeServlet() {
    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();
    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");

    HttpSession 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);
  }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# javaee购物车  # 用session实现购物车  # java  # session  # 购物车  # JavaWeb购物车项目开发实战指南  # JavaWeb后台购物车类实现代码详解  # eclipse的web项目实现Javaweb购物车的方法  # javaweb购物车案列学习开发  # java web开发之购物车功能实现示例代码  # javaweb图书商城设计之购物车模块(3)  # java web开发之实现购物车功能  # java商城项目实战之购物车功能实现  # java实现网上购物车程序  # Java web实现购物车案例  # 未来  # 书单  # 你还  # 大家多多  # response  # HttpServletResponse  # throws  # protected  # doGet  # HttpServletRequest  # request  # void  # html  # text  # PrintWriter  # charset  # setContentType  # IOException  # ServletException 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  php json中文编码为null的解决办法  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  如何在万网开始建站?分步指南解析  如何快速搭建高效香港服务器网站?  Laravel怎么在Controller之外的地方验证数据  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  Laravel如何使用查询构建器?(Query Builder高级用法)  Laravel如何使用模型观察者?(Observer代码示例)  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  Laravel如何配置任务调度?(Cron Job示例)  微信小程序 HTTPS报错整理常见问题及解决方案  C#如何调用原生C++ COM对象详解  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  三星网站视频制作教程下载,三星w23网页如何全屏?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何用PHP工具快速搭建高效网站?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  JavaScript如何实现类型判断_typeof和instanceof有什么区别  个人摄影网站制作流程,摄影爱好者都去什么网站?  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  如何用wdcp快速搭建高效网站?  如何用5美元大硬盘VPS安全高效搭建个人网站?  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  Laravel如何实现多对多模型关联?(Eloquent教程)  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  如何快速建站并高效导出源代码?  nodejs redis 发布订阅机制封装实现方法及实例代码  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  如何破解联通资金短缺导致的基站建设难题?  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  公司网站制作需要多少钱,找人做公司网站需要多少钱?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何在七牛云存储上搭建网站并设置自定义域名?  JavaScript如何实现倒计时_时间函数如何精确控制  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  如何快速打造个性化非模板自助建站?  Laravel Session怎么存储_Laravel Session驱动配置详解