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


相关推荐: phpredis提高消息队列的实时性方法(推荐)  EditPlus中的正则表达式实战(6)  高端企业智能建站程序:SEO优化与响应式模板定制开发  北京的网站制作公司有哪些,哪个视频网站最好?  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  如何在Windows虚拟主机上快速搭建网站?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  佛山网站制作系统,佛山企业变更地址网上办理步骤?  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  详解MySQL数据库的安装与密码配置  Python文件流缓冲机制_IO性能解析【教程】  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  图册素材网站设计制作软件,图册的导出方式有几种?  node.js报错:Cannot find module &#39;ejs&#39;的解决办法  Laravel怎么在Controller之外的地方验证数据  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  高性价比服务器租赁——企业级配置与24小时运维服务  昵图网官方站入口 昵图网素材图库官网入口  Laravel如何与Pusher实现实时通信?(WebSocket示例)  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  百度浏览器如何管理插件 百度浏览器插件管理方法  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  Laravel怎么判断请求类型_Laravel Request isMethod用法  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  JavaScript数据类型有哪些_如何准确判断一个变量的类型  如何用PHP快速搭建CMS系统?  如何快速生成凡客建站的专业级图册?  轻松掌握MySQL函数中的last_insert_id()  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  微信小程序 五星评分(包括半颗星评分)实例代码  Java垃圾回收器的方法和原理总结  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  简历没回改:利用AI润色让你的文字更专业  详解Android中Activity的四大启动模式实验简述  如何在腾讯云免费申请建站?