模仿淘宝购物系统的Java Web前端项目(开源项目)

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

文章目录


前言

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

本项目要求完成Java Web的开发环境准备,以及项目开发框架的搭建

Web开发环境准备,包括eclipse、MySQL、tomcat

Web项目框架搭建,涉及jsp、servlet、MVC等技术

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


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

Web端功能设计

首页

热销商品

新到商品

商品分类

商品详情

![在这里

购物车


添加地址


提交订单

部分代码展示

GoodsController中的搜索商品功能

java 复制代码
		//搜索商品
				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中的搜索商品功能

java 复制代码
//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


源码获取

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

相关推荐
weixin_4563216417 分钟前
Java架构设计:Redis持久化方案整合实战
java·开发语言·redis
攒了一袋星辰27 分钟前
SequenceGenerator高并发有序顺序号生成中间件 - 架构设计文档
java·后端·spring·中间件·架构·kafka·maven
lzp079133 分钟前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
Memory_荒年1 小时前
TiDB:当 MySQL 遇上分布式,生了个“超级混血儿”
java·数据库·后端
asom221 小时前
DDD(领域驱动设计) 核心概念详解
java·开发语言·数据库·spring boot
大傻^2 小时前
LangChain4j Spring Boot Starter:自动配置与声明式 Bean 管理
java·人工智能·spring boot·spring·langchain4j
沐硕2 小时前
《基于改进协同过滤与多目标优化的健康饮食推荐系统设计与实现》
java·python·算法·fastapi·多目标优化·饮食推荐·改进协同过滤
愣头不青2 小时前
560.和为k的子数组
java·数据结构
共享家95272 小时前
Java入门(String类)
java·开发语言
l软件定制开发工作室2 小时前
Spring开发系列教程(34)——打包Spring Boot应用
java·spring boot·后端·spring·springboot