Jsp+Servlet实现购物车功能

发布时间 - 2026-01-11 02:41:14    点击率:

本文实例为大家分享了Servlet实现购物车功能的具体代码,供大家参考,具体内容如下

(1)用servlet实现简单的购物车系统,项目结构例如以下:(新建web Project项目  仅仅须要AddItemServlet , ListItemServlet。exam403.jsp三个文件就可以。其它的不用管)

(2)exam403.jsp代码例如以下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="/servletProject/addItem">
 <label></label>
 商品:
 <select name="itemID" id="itemID">
 <option value="洗衣粉">洗衣粉</option>
 <option value="香皂">香皂</option>
 <option value="食用油">食用油</option>
 </select>
 <p>数量:
 <label>
 <input name="quantity" type="text" id="quantity" value="1" />
 </label>
 <label>
 <input type="submit" name="Submit" value="提交" />
 </label>
 <a href="/servletProject/listItem">查看购物车</a></p>
</form>
</body>
</html>

(3)AddItemServlet代码例如以下:

package com.lc.shoppingCar;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class AddItemServlet extends HttpServlet 
{ 
 protected void doGet(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,java.io.IOException
 {
 ServletContext application=getServletContext() ;
 ServletConfig config=getServletConfig() ;
 response.setContentType("text/html;charset=gb2312");
 PrintWriter out=response.getWriter(); 
 HttpSession session =request.getSession();
 request.setCharacterEncoding("gb2312");
 
 //读取表单传入的商品ID及数量
 String id=request.getParameter("itemID"); 
 String num=request.getParameter("quantity");
 if(id!=null && num.length()!=0)
 { //从Sessionn中读取购物车
 HashMap shoppingCar=(HashMap)session.getAttribute("shoppingCar");
 if(shoppingCar==null)
 shoppingCar=new HashMap();
 //将商品加入到购物车中
 String onum=(String)shoppingCar.get(id);
 if(onum==null)
  shoppingCar.put(id,num);
 else
 {
 int n1=Integer.parseInt(num);
 int n2=Integer.parseInt(onum);
 String result=String.valueOf(n1+n2);
 shoppingCar.put(id,result);
 } 
  //将购物车写回session中保存
 session.setAttribute("shoppingCar",shoppingCar); 
 }
 else //假设传入的商品ID号为空或数量为空。显示提示信息
 System.out.print("商品ID号为空会或数量为空!");
 //返回商品列表页
 response.sendRedirect("/servletProject/exam403.jsp"); 
 } 
 
protected void doPost(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,java.io.IOException
 {
 doGet(request,response);
 }
}

(4)ListItemServlet代码例如以下:

package com.lc.shoppingCar;


import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class ListItemServlet extends HttpServlet 
{ 
 protected void doGet(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,java.io.IOException
 {
 ServletContext application=getServletContext() ;
 ServletConfig config=getServletConfig() ;
 response.setContentType("text/html;charset=gb2312");
 PrintWriter out=response.getWriter(); 
 HttpSession session =request.getSession();
 request.setCharacterEncoding("gb2312");
 
 //从session中获取购物车
 HashMap shoppingCar=(HashMap)session.getAttribute("shoppingCar");
 //显示购物车中的内容
 if(shoppingCar!=null)
 {
 Set show=shoppingCar.entrySet();
 Iterator it=show.iterator();
 while(it.hasNext())
 {
  out.print(it.next()+"<br>");
 }
 }
 else
 out.print("购物车为空。"); 
 } 
 
protected void doPost(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,java.io.IOException
 {
 doGet(request,response);
 }
}

(5)实现效果例如以下:

訪问:http://localhost:8080/servletProject/exam403.jsp    学则商品 提交

点击查看购物车:

OK!

简单的购物车 到此结束!

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


# jsp  # servlet  # 购物车  # 使用MongoDB和JSP实现一个简单的购物车系统实例  # JavaWeb程序设计之JSP实现购物车功能全过程  # 为空  # 车中  # 提示信息  # 点击查看  # 到此  # 大家分享  # 表单  # 具体内容  # 大家多多  # 就可以  # 无标题文档  # action  # method  # post  # addItem  # servletProject  # label  # charset  # text 


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


相关推荐: INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  图册素材网站设计制作软件,图册的导出方式有几种?  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  iOS UIView常见属性方法小结  Android okhttputils现在进度显示实例代码  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  制作旅游网站html,怎样注册旅游网站?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Android仿QQ列表左滑删除操作  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  高防服务器租用如何选择配置与防御等级?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  魔方云NAT建站如何实现端口转发?  zabbix利用python脚本发送报警邮件的方法  网站建设整体流程解析,建站其实很容易!  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  Laravel如何保护应用免受CSRF攻击?(原理和示例)  大学网站设计制作软件有哪些,如何将网站制作成自己app?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  免费网站制作appp,免费制作app哪个平台好?  长沙做网站要多少钱,长沙国安网络怎么样?  微信小程序 scroll-view组件实现列表页实例代码  Laravel如何实现一对一模型关联?(Eloquent示例)  如何用免费手机建站系统零基础打造专业网站?  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Python文本处理实践_日志清洗解析【指导】  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  深入理解Android中的xmlns:tools属性  Laravel如何使用Eloquent进行子查询  如何快速配置高效服务器建站软件?  Laravel怎么清理缓存_Laravel optimize clear命令详解  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  如何在万网开始建站?分步指南解析  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  如何在企业微信快速生成手机电脑官网?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  Bootstrap整体框架之CSS12栅格系统