基于javaweb+mysql的在线购物商城shop系统(仅前台购物)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

用户:登录、注册、商品查询与下单、购物车管理

技术框架

HTML CSS JavaScript jQuery LayUI thymeleaf SpringBoot SpringMVC MyBatis


适用

课程设计,大作业,毕业设计,项目练习,学习演示等

     */@GetMapping("/logout")public String logout(HttpSession session) {session.invalidate();return "login";}/*** 用户信息*/@GetMapping("/userInfo")public ModelAndView userInfo(HttpSession session) {User user = (User) session.getAttribute("user");ModelAndView modelAndView = new ModelAndView();modelAndView.setViewName("userInfo");modelAndView.addObject("cartList", cartService.findAllCartVOByUserId(user.getId()));return modelAndView;}
}package com.demo.service.impl;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
        modelAndView.addObject("cartList",cartService.findAllCartVOByUserId(user.getId()));return modelAndView;}@GetMapping("/deleteById/{id}")public String deleteById(@PathVariable("id") Integer id){cartService.removeById(id);return "redirect:/cart/findAllCart";}@GetMapping("/settlement2")public ModelAndView settlement2(HttpSession session){ModelAndView modelAndView = new ModelAndView();modelAndView.setViewName("settlement2");User user = (User)session.getAttribute("user");modelAndView.addObject("cartList",cartService.findAllCartVOByUserId(user.getId()));QueryWrapper wrapper = new QueryWrapper();wrapper.eq("user_id",user.getId());modelAndView.addObject("addressList",userAddressService.list(wrapper));return modelAndView;}@PostMapping("/update/{id}/{quantity}/{cost}")@ResponseBodypublic String updateCart(
            userAddress.setRemark(remark);userAddress.setIsdefault(1);userAddress.setUserId(user.getId());userAddressMapper.insert(userAddress);}//存储ordersorders.setUserAddress(address);orders.setUserId(user.getId());orders.setLoginName(user.getLoginName());String seriaNumber = null;try {StringBuffer result = new StringBuffer();for (int i = 0; i < 32; i++) {result.append(Integer.toHexString(new Random().nextInt(16)));}seriaNumber = result.toString().toUpperCase();} catch (Exception e) {e.printStackTrace();}orders.setSerialnumber(seriaNumber);orderMapper.insert(orders);//存储ordersdetailQueryWrapper wrapper = new QueryWrapper();wrapper.eq("user_id", user.getId());List<Cart> cartList = cartMapper.selectList(wrapper);for (Cart cart : cartList) {
                    $(this).find(".fj").removeClass("nuw");$(this).find(".zj").hide();})});</script>
</div><!-- 底部 -->
<div th:fragment="footer"><div class="b_btm_bg b_btm_c" id="footer"><div class="b_btm"><table border="0" style="width:210px; height:62px; float:left; margin-left:75px; margin-top:30px;" cellspacing="0" cellpadding="0"><tr><td width="72"><img src="/images/b1.png" width="62" height="62" /></td>

</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.demo.mapper.OrderDetailMapper"></mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.demo.mapper.UserAddressMapper"></mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.demo.mapper.ProductMapper">
    <!-- centrer --><div th:each="productCategory:${list}"><div class="content mar_20"><img th:src="${productCategory.bannerImg}" width="1200" /></div><div class="i_t mar_10"><span class="floor_num" th:text="${productCategory.name}"></span> <span class="fl" th:text="${productCategory.name}">笔记本</span></div><div class="content"><div class="fresh_left"><div class="fre_ban"><div id="imgPlay1" class="imgPlay1"><ul class="imgs" id="actor1"><li><img th:src="${productCategory.topImg}" width="211"/></li></ul></div></div></div>
    <!-- centrer --><div th:each="productCategory:${list}"><div class="content mar_20"><img th:src="${productCategory.bannerImg}" width="1200" /></div><div class="i_t mar_10"><span class="floor_num" th:text="${productCategory.name}"></span> <span class="fl" th:text="${productCategory.name}">笔记本</span></div><div class="content"><div class="fresh_left"><div class="fre_ban"><div id="imgPlay1" class="imgPlay1"><ul class="imgs" id="actor1"><li><img th:src="${productCategory.topImg}" width="211"/></li></ul></div></div></div><div class="fresh_mid"><ul><li th:each="productVO:${productCategory.productVOList}"><div class="name"><a th:href="'/product/findById/'+${productVO.id}" th:text="${productVO.name}"></a>
    @Autowiredprivate ProductMapper productMapper;@Autowiredprivate ProductCategoryMapper productCategoryMapper;@Overridepublic List<Product> findByCategoryId(String type, Integer categoryId) {Map<String, Object> map = new HashMap<>();map.put("categorylevel" + type + "_id", categoryId);return productMapper.selectByMap(map);}@Overridepublic TableDataVO<TableProductVO> findAllTableData(Integer page, Integer limit) {IPage<Product> productIPage = new Page<>(page, limit);IPage<Product> result = productMapper.selectPage(productIPage, null);List<Product> productList = result.getRecords();List<TableProductVO> tableProductVOList = new ArrayList<>();QueryWrapper wrapper;ProductCategory productCategory;for (Product product : productList) {TableProductVO tableProductVO = new TableProductVO();BeanUtils.copyProperties(product, tableProductVO);
            wrapper = new QueryWrapper();wrapper.eq("categorylevelone_id", levelOneVO.get(i).getId());List<Product> productList = productMapper.selectList(wrapper);List<ProductVO> productVOList = productList.stream().map(e -> new ProductVO(e.getId(),e.getName(),e.getPrice(),e.getFileName())).collect(Collectors.toList());levelOneVO.get(i).setProductVOList(productVOList);}for (ProductCategoryVO levelOneProductCategoryVO : levelOneVO) {wrapper = new QueryWrapper();wrapper.eq("type", 2);
</head>
<body>
<div class="log_bg"><div class="top"><div class="logo"></div></div><div class="regist"><div class="log_img"><img src="/images/l_img.png" width="611" height="425"/></div><div class="reg_c"><form id="register" action="/user/register" method="post"><table border="0" style="width:420px; font-size:14px; margin-top:20px;" cellspacing="0" cellpadding="0"><tr height="50" valign="top"><td width="95">&nbsp;</td><td><span class="fl" style="font-size:24px;">注册</span><span class="fr">已有商城账号,<a href="/login.html" style="color:#ff4e00;">我要登录</a></span></td></tr><tr height="50"><td align="right"><font color="#ff4e00">*</font> &nbsp;登录用户名 &nbsp;</td><td><input type="text" value="" name="loginName" class="l_user"  pattern="^[A-Za-z0-9]+$" title="用户名由字母和数字组成" required/></td></tr><tr><td align="right">
                        <div class="ch_img"></div></li><li class="type">100ml<div class="ch_img"></div></li></ul></div><div class="des_choice"><span class="fl">颜色选择:</span><ul><li class="color">红色<div class="ch_img"></div></li><li class="color checked">白色<div class="ch_img"></div></li><li class="color">黑色<div class="ch_img"></div></li></ul></div><br>
<div class="log_bg"><div class="top"><div class="logo"></div></div><div class="regist"><div class="log_img"><img src="/images/l_img.png" width="611" height="425"/></div><div class="reg_c"><form id="register" action="/user/register" method="post"><table border="0" style="width:420px; font-size:14px; margin-top:20px;" cellspacing="0" cellpadding="0"><tr height="50" valign="top"><td width="95">&nbsp;</td><td><span class="fl" style="font-size:24px;">注册</span><span class="fr">已有商城账号,<a href="/login.html" style="color:#ff4e00;">我要登录</a></span></td></tr><tr height="50"><td align="right"><font color="#ff4e00">*</font> &nbsp;登录用户名 &nbsp;</td>
                <p th:text="${product.name}">手机</p>“开业巨惠,北京专柜直供”,不光低价,“真”才靠谱!</div><div class="des_price">本店价格:<b th:text="${product.price}"></b><br/></div><div class="des_price">库存:<b id="stock" th:text="${product.stock}">20</b><br/></div><div class="des_choice"><span class="fl">型号选择:</span><ul><li class="type checked">30ml<div class="ch_img"></div></li><li class="type">50ml<div class="ch_img"></div></li><li class="type">100ml<div class="ch_img"></div></li></ul>
    }@GetMapping("/findById/{id}")public ModelAndView findById(@PathVariable("id") Integer id, HttpSession session) {ModelAndView modelAndView = new ModelAndView();modelAndView.setViewName("productDetail");modelAndView.addObject("product", productService.getById(id));modelAndView.addObject("list", productCategoryService.getAllProductCategoryVO());User user = (User) session.getAttribute("user");if (user == null) {modelAndView.addObject("cartList", new ArrayList<>());} else {modelAndView.addObject("cartList", cartService.findAllCartVOByUserId(user.getId()));}return modelAndView;}@RequestMapping("/findAllTableProduct")@ResponseBodypublic TableDataVO<TableProductVO> findAllTableProduct(Integer page, Integer limit) {
                            </div></li></ul></div></div><ul class="menu_r"><li><a href="/productCategory/list">首页</a></li><li th:each="productCategory:${list}"><a th:href="'/product/list/one/'+${productCategory.id}" th:text="${productCategory.name}"></a></li></ul></div></div><script type="text/javascript">$(function(){//商品类目$(".leftNav ul li").hover(function(){$(this).find(".fj").addClass("nuw");$(this).find(".zj").show();},function(){$(this).find(".fj").removeClass("nuw");











基于javaweb+mysql的在线购物商城shop系统(仅前台购物)相关推荐

  1. 基于javaweb+SpringBoot+MyBatis在线购物商城shop系统(仅前台购物)

    基于javaweb+SpringBoot+MyBatis在线购物商城shop系统(仅前台购物) 开发工具:eclipse/idea/myeclipse/sts等均可配置运行 适用 课程设计,大作业,毕 ...

  2. 基于javaweb的水果店商城超市系统(java+ssm+jsp+ajax+jquery+mysql)

    基于javaweb的水果店商城超市系统(java+ssm+jsp+ajax+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea ...

  3. 基于javaweb+mysql的学生在线选课系统(管理员、教师、学生)

    基于javaweb+mysql的学生在线选课系统(管理员.教师.学生) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均 ...

  4. 基于javaweb+mysql的电影院售票购票电影票管理系统(前台、后台)

    基于javaweb+mysql的电影院售票购票电影票管理系统(前台.后台) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适 ...

  5. 基于javaweb+mysql的+JPA旅行网站旅游管理系统(前台、后台)

    基于javaweb+mysql的+JPA旅行网站旅游管理系统(前台.后台) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适 ...

  6. 基于javaweb+mysql的电影在线观看系统(java+ssm+jsp+layui+maven+mysql)

    一.项目简述 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: JSP ...

  7. 基于javaweb+mysql的人脸识别登录系统(java+springboot+maven+mysql)

    实现的功能有: 管理员后台录入人脸信息.前台用户登录时选择人脸识别方式登录. PS:用到了百度人脸识别的API接口,包括人脸检测.人脸识别对比等. 适用 课程设计,大作业,毕业设计,项目练习,学习演示 ...

  8. 基于javaweb的音乐专辑商城系统(java+ssm+jsp+jquery+mysql)

    基于javaweb的音乐专辑商城系统(java+ssm+jsp+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myecl ...

  9. 基于javaweb+jsp的网上商城系统(java+jsp+servlet+mysql+ajax)

    基于javaweb+jsp的网上商城系统(java+jsp+servlet+mysql+ajax) 一.项目简述(+需求文档+PPT) 功能: 主页显示热销商品:所有商品展示,可进行商品搜索:点 击商 ...

最新文章

  1. NOI2020 前最后的日子
  2. C++(6)--初识循环while,do-while
  3. ASP.NET中对STA COM组件的不正确调用产生的w3wp远程DoS
  4. java_泛型方法使用实例
  5. 宏观经济学考前主观大题汇总复习
  6. C语言再学习-- 大端小端详解(转)
  7. 新手如何在CSDN上写博客
  8. 区块链:数字广告假量的“终结者”
  9. m3u8播放器-DPlayer,P2P加速 记忆播放
  10. 水星路由器登录界面找不到服务器,新版水星(Mercurey)路由器后台登陆界面打不开怎么办?...
  11. Dest0g3 520迎新赛部分WP
  12. 什么是EasyUI,如何使用EasyUI?--easyui的十二种用法
  13. 一张图片中的分离数据+十进制删改十六进制+连续base32和64编码+okk编码题目--rsa中求d题目
  14. ubuntu 下超简单的安装微信,QQ等软件
  15. python 京东 抢券_Python写一个京东抢券脚本
  16. 网站优化怎么挖掘长尾关键词?
  17. 条码打印软件有关打印错误的解决方法
  18. 问题--[__NSCFNumber length]: unrecognized selector sent to instance 0x8b3c310’ - andy_shen
  19. 微积分入门书籍(一)
  20. Layui分页乱码,时间控件乱码

热门文章

  1. 计算机如何解锁访问,win7 documents and settings文件夹怎么解锁访问
  2. 康拓123发卡软件使用
  3. chatGPT衣食住行10种场景系列教程(01)使用chatGPT设计发型、P图变漂亮~真帅哈哈哈~
  4. JavaWeb:网上书店的案例
  5. 微信小程序中使用绝对路径
  6. 一文读懂新晋 L2 网络 Arbitrum 及其收益耕作机会
  7. VsCode之Bookmarks插件使用(书签,快速跳转)
  8. Ubuntu下分卷压缩与分卷解压
  9. AI人工智能在2020年的7个发展趋势
  10. 图片:手放到液氮瞬间