基于Java Web的随意购商城系统(开源项目)

news2025/2/26 16:05:34

提示:此项目仅作为本博主的学习笔记记录,不作为商品售卖,资源往下翻看源码获取

文章目录

  • 前言
  • Web端功能设计
    • 首页
    • 热销商品
    • 新到商品
    • 商品分类
    • 商品详情
    • 购物车
    • 添加地址
    • 提交订单
    • 部分代码展示
  • 可能会出现的错误
    • 如果拿到项目后发现图片不显示
  • 源码获取


前言

提示:这里可以添加本文要记录的大概内容:

本项目要求完成Java Web的开发环境准备,以及项目开发框架的搭建
Web开发环境准备,包括eclipse、MySQL、tomcat
Web项目框架搭建,涉及jsp、servlet、MVC等技术

运行网址:http://localhost:8080/eshop0/index.action


提示:以下是本篇文章正文内容,下面案例可供参考

Web端功能设计

首页

在这里插入图片描述

热销商品

在这里插入图片描述

新到商品

在这里插入图片描述

商品分类

在这里插入图片描述

商品详情

![在这里在这里插入图片描述

购物车

在这里插入图片描述
在这里插入图片描述

添加地址

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

提交订单

在这里插入图片描述

在这里插入图片描述

部分代码展示

GoodsController中的搜索商品功能

		//搜索商品
				else if(url.equals("/goods/searchGoods.action")){
					String keyword=req.getParameter("keyword");
					String sort=req.getParameter("sort");
					List<Goods> searchGoods=new ArrayList<Goods>();
					if(keyword!=null&&!keyword.equals("")){
						searchGoods=GoodsService.searchGoodsByKeywords(keyword,sort);
						req.setAttribute("goods", searchGoods);
					}
					req.getRequestDispatcher("/goods/goods_list.jsp").forward(req, resp);
					
	}
		else if(url.equals("/goods/deleteCart.action")){
			resp.setContentType("text/json; charset=utf-8");
			PrintWriter out = resp.getWriter();
			String index=req.getParameter("index");
			List<Goods> goodslist=new ArrayList<Goods>();
			Object ob=req.getSession().getAttribute("goodslist");
			if(ob!=null&&index!=null){
				goodslist=(List<Goods>) ob;
				goodslist.remove(Integer.parseInt(index));
			}
			req.getSession().setAttribute("goodslist", goodslist);
			out.print("{\"success\":true,\"cartnum\":"+goodslist.size()+"}");

		}else if(url.equals("/goods/clearCart.action")){
			resp.setContentType("text/json; charset=utf-8");
			PrintWriter out = resp.getWriter();
			req.getSession().removeAttribute("goodslist");
			out.print("{\"success\":true}");
			
	
		}else if(url.equals("/goods/changeCart.action")){
			List<Goods> goodslist=new ArrayList<Goods>();
			Object ob=req.getSession().getAttribute("goodslist");
			if(ob!=null){
				goodslist=(List<Goods>) ob;				
			}
			resp.setContentType("text/json; charset=utf-8");
			PrintWriter out = resp.getWriter();
			String index=req.getParameter("index");
			String goodsSales=req.getParameter("goodsSales");
			float totalAmount=0;
			float totalPrice=0;
			if(ob!=null){
                for(int i=0;i<goodslist.size();i++){
                	if(i==Integer.parseInt(index))
                		{
                		goodslist.get(i).setGoodsSales(Integer.parseInt(goodsSales));
                		totalPrice=goodslist.get(i).getGoodsSales()*goodslist.get(i).getGoodsDiscount();
                		}
                	totalAmount=totalAmount+goodslist.get(i).getGoodsSales()*goodslist.get(i).getGoodsDiscount();
                }
			}
	
			out.print("{\"success\":true,\"totalAmount\":"+totalAmount+",\"totalPrice\":"+totalPrice+"}");
		
			  }else if(url.equals("/goods/buyGoods.action")){ 
			  req.setAttribute("catelist", catelist);  
			  User logu=(User)req.getSession().getAttribute("_LOGIN_USER_");  
			  if(logu!=null){
 			 //  List<Address> addresses=AddressService.getAllAddress(logu.getUserId()); 
			  //req.setAttribute("addrs",addresses);  
			  } 
			  req.getRequestDispatcher("/order/buyGoods.jsp").forward(req, resp);
			 }

GoodsService中的搜索商品功能

//byzmh
	public static List<Goods> searchGoodsByKeywords(String name,String sort) {
		// TODO Auto-generated method stub
		DBUtil1 db=new DBUtil1();// 连接数据库
		String sql="select * from t_goods where goods_name like ? "; 
		if(sort!=null)
		  if(sort.equals("1"))
				sql=sql+" order by goods_discount asc";
		  else if(sort.equals("2"))
			  sql=sql+" order by goods_discount  desc";
		  else if(sort.equals("3"))
			  sql=sql+" order by goods_sales desc";
		  else if(sort.equals("4"))
			  sql=sql+" order by goods_sales asc";
		    
		String params[]={"%"+name+"%"};
		List<Map<String,String>> goods_map=db.getList(sql,params);
		if(goods_map!=null)
			return maptomodel(goods_map);
		else
			return null;
	}

可能会出现的错误

如果某个功能不好使,请刷新重试,此项目实在找不到当时的版本了

如果拿到项目后发现图片不显示

1、找到项目中的代码,看一下是不是图片地址不对,对应地址【/images】下查看
在这里插入图片描述
在这里插入图片描述

2、检查是不是数据库连接问题
数据库连接工具 DBUtil.java


源码获取

如果有按钮不好使请刷新重试,还是不好使请评论或私信我检查
因为原来有个功能齐全的,有个不全的,不知道谁说那个全的不全,结果把不全的给替换掉了那个全的,于是就成了现在各位看到的样子,所以这个如果还是不全,我会尽量找找那个全的

  • 点击此处转到CSDN资源源码地址:
    基于Java Web的随意购商城系统(开源项目)
    模仿Java Web随意购项目

  • Gitee提取地址:点击此处跳转到基于Java Web的随意购商城系统(开源项目)源码地址
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/405358.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在Vue中使用高德地图

在Vue中使用高德地图一、如何在Vue中引入基础高德地图1、步骤一&#xff1a;注册并登录高德地图开放平台&#xff0c;申请密钥2、步骤二&#xff1a;安装高德地图加载器3、封装一个自定义地图组件&#xff0c;并初始化地图二、根据关键词搜索&#xff0c;并定位到搜索的位置三、…

谷歌浏览器自带翻译网页插件没用了怎么办?这里有解决办法。

前言 正当我打算来一波科学上网的时候&#xff0c;当我用谷歌浏览器打开文档网站时候&#xff0c;发现发现google浏览器网页翻译插件没用了。经过了我一段时间的搜寻&#xff0c;终于有了解决方案。 原因 从 10 月 20 日起&#xff0c;谷歌在陆续移除国内服务器上的谷歌翻译…

Vue学习之从入门到神经(两万字收藏篇)

写在前面 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家:人工智能学习网站 Vue写在前面前言Vue.js三种安装方式一、 Vue导入二、Vue基本语法1.钩子函数2. 插值表达式3.显示数据(v-text和v-html)4.数据双向…

深入理解Vue响应式原理

前言 Vue响应式原理是Vue最独特的特性之一&#xff0c;当数据模型进行修改时&#xff0c;视图就会进行更新&#xff0c;这使得状态管理简单直接&#xff0c;但是其底层的细节还是需要我们深入学习理解&#xff0c;这样遇到一些问题我们才能快速进行定位&#xff0c;并解决&…

【UML】-- 顺序图练习题含答案(自动售货机、学生选课、提款机、购买地铁票、洗衣机工作)

注意&#xff1a;对象表示法对象名需要下划线&#xff0c;此文章没有标注 一、练习一 根据下面的叙述&#xff0c;绘制一幅关于顾客从自动售货机中购买物品的顺序图。顾客&#xff08;User&#xff09;先向自动售货机的前端&#xff08;Front&#xff09;投币&#xff1b;售货…

CSDN文章点赞、收藏、评论后到底发生了什么?简要分析HTTP交互机制

作者&#xff1a;Eason_LYC 悲观者预言失败&#xff0c;十言九中。 乐观者创造奇迹&#xff0c;一次即可。 一个人的价值&#xff0c;在于他拥有的&#xff0c;而不是他会的。所以可以不学无数&#xff0c;但不能一无所有&#xff01; 技术领域&#xff1a;WEB安全、网络攻防 关…

node.js是干什么的

一、Node.js简介 Node.js是一个开源和跨平台的JavaScript运行时环境。它几乎是任何类型项目的流行工具&#xff01; Node.js在浏览器之外运行V8 JavaScript引擎&#xff08;Google Chrome的内核&#xff09;。这使得Node.js的性能非常好。 Node.js应用程序在单个程序中运行&…

使用SpringBoot一小时快速搭建一个简单后台管理(增删改查)(超详细教程)

最近也是临近期末了&#xff0c;各种的期末大作业&#xff0c;后台管理也是很多地方需要用到的&#xff0c;为了方便大家能快速上手&#xff0c;快速搭建一个简单的后台管理&#xff0c;我花了两天时间整理了一下 我会从0开始介绍&#xff0c;从数据库的设计到前端页面的引入最…

使用uniapp开发APP时的调试/安卓打包等

一、调试 1.先用数据线连接电脑和手机&#xff0c;选择“文件传输”&#xff0c; 2.打开开发者模式&#xff0c;华为手机举列-->设置-->关于手机-->版本号&#xff0c;多次连续点击“版本号”&#xff0c;就会提示已打开 开发者模式 3.华为手机举列-->设置-->…

Vue:element-ui中表格过长内容隐藏显示

一、el-table表格 在使用VUE显示后台数据时&#xff0c;经常会遇到数据过长&#xff0c;显示出来的效果很难看&#xff0c;如下图所示&#xff1a; 上图中&#xff0c;红框框出的内容由于长度过长&#xff0c;占据了三行空间&#xff0c;如果内容更多的话&#xff0c;占据行数就…

基于WEB的网上购物系统的设计与实现(附:源码 论文 sql文件)

摘 要 随着计算机网络技术的飞速发展和人们生活节奏的不断加快&#xff0c;电子商务技术已经逐渐融入了人们的日常生活当中&#xff0c;网上商城作为电子商务最普遍的一种形式&#xff0c;已被大众逐渐接受。因此开发一个网上商城系统&#xff0c;适合当今形势&#xff0c;更加…

【Windows Server 2019】Web服务 IIS 配置与管理—— IIS 的安装与基本配置 Ⅲ

目录4. 安装 IIS 服务器5. IIS 的基本配置5.1 绑定 IP参考资料关联博文4. 安装 IIS 服务器 准备工作&#xff1a;选择一台服务器作为WEB-IIS服务器&#xff0c;IP地址为192.168.82.208。 在Windows Server 2019系统中&#xff0c;IIS角色是可选组件&#xff0c;默认情况下是没…

Nginx之负载均衡upstream模块简介和使用

一、upstream模块简介 Nginx的负载均衡功能依赖于ngx_http_upsteam_module模块&#xff0c;所支持的代理方式包括proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass, memcached_pass和grpc_pass。ngx_http_upstream_module模块有允许Nginx定义一组或多组服务组&#xff0c;使用…

在 vue eslint 报错 error “Component name “*****“ should always be multi-word”,该怎么办?

目录 出现的问题&#xff1a; 报错的原因&#xff1a; 解决方案&#xff1a; 方案一 &#xff1a;重命名(亲测有效) 方案二 &#xff1a;配置 vue.config.js 文件&#xff08;网上方法&#xff0c;本人使用无效&#xff09; 方案三 &#xff1a;配置 .eslintrc.js文件&a…

css设置渐变色

css如何设置自定义渐变色&#xff1f;线性渐变篇 CSS渐变可以让你在两个或多个指定颜色之间显示平滑的过渡 CSS定义了三种渐变类型: Linear Gradients (goes down/up/left/right/diagonally) 下降/ 上升/左/右/对角线Radial Gradients (defined by their center) 由中心定义…

SpringBoot整合WebSocket实现后端向前端发送消息

目录 一、什么是 websocket 接口 二、适用场景 三、示例代码 3.1、添加pom.xml依赖 3.2、创建WebSokcet配置类 3.3、创建测试发送消息接口 3.4、测试webSocket&#xff08;http://www.jsons.cn/websocket/&#xff09; 一、什么是 websocket 接口 使用 websocket 建立长连…

vue中的render函数(通俗、易懂)

文章目录一、初步认识render函数二、为什么使用render函数三、render函数的解析一、初步认识render函数 import Vue from vue import App from ./AppVue.config.productionTip falsenew Vue({el: #app,render: h > h(App) })在使用脚手架创建vue项目的过程&#xff0c;我们…

纯前端文档预览,还要支持所有主流格式,有这一篇就足够了

写在前面 纯前端的文档预览功能&#xff0c;是非常常见的需求&#xff0c;但就是这么简单的需求&#xff0c;难住了许多可爱的小伙伴们。别急&#xff0c;先访问一下解决方案&#xff0c;给你一个惊喜&#xff0c;再往下看&#xff1a; 文件在线预览DEMO 服务器文件预览DEMO …

【计算机网络】Web服务器的配置

目录 课题描述 需求分析 2.1 WEB服务器基本构架 2.1.1 WEB服务器和浏览器 2.2 HTTP协议 2.2.1 HTTP简介 2.2.2 HTTP工作原理 2.3 FTP协议 2.3.1 FTP简介 2.3.2 FTP工作原理 2.4 ISS服务作用 概要设计 3.1 ISS服务器的安装与配置 3.2 详细设计 结果分析 4.1 We…

JS实现轮播图(一看就懂逻辑清晰)

轮播图有很多种实现方法&#xff0c;这是其中一种最清晰的方法。思路很清晰&#xff0c;代码很简单&#xff0c;欢迎大佬多指教。 先来看下效果图&#xff0c;嫌麻烦就不用具体图片来实现了&#xff0c;主要是理清思路。&#xff08;自动轮播&#xff0c;左右按钮切换图片&…