源码获取:俺的博客首页 "资源" 里下载!

项目介绍

本项目分为前后台,分为普通用户、管理员两种角色。前台普通用户登录,后台管理员登录;

管理员角色包含以下功能:
登录页面,用户查看,一级分类管理,二级分类管理,商品管理,查看订单,留言管理等功能。

用户角色包含以下功能:
用户首页,查看商品,用户注册,用户登录,加入购物车,提交订单,查看我的订单,留言板留言等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 
5.数据库:MySql 5.7版本;
6.是否maven项目:否

技术栈

1. 后端:Spring+SpringMVC+Mybatis
2. 前端:JSP+jQuery+Ajax

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ 登录

订单管理控制层:

@Controller
public class orderController {@Autowiredprivate OrderService orderService;@RequestMapping("/toOrder")public String toOrder(HttpServletRequest request,Model model) throws Exception {Orders orders = new Orders();Cart cart = (Cart) request.getSession().getAttribute("cart");User loginUser = (User) request.getSession().getAttribute("loginUser");if(loginUser==null){model.addAttribute("message", "对不起您还没有登录");return "msg";}
//      0表示没有付款、1表示已付款即将发货 2表示确认收货 3表示交易成功orders.setState(0);orders.setOrderTime(new Date());orders.setUid(loginUser.getUid());orders.setMoney(cart.getTotale());orderService.toOrder(orders);Map<Integer, CartItem> cartItems = cart.getCartItem();for (Entry<Integer, CartItem> entry : cartItems.entrySet()) {CartItem cartItem = entry.getValue();Orderitem orderitem = new Orderitem();orderitem.setProduct(cartItem.getProduct());orderitem.setCount(cartItem.getCount());orderitem.setPid(cartItem.getProduct().getPid());orderitem.setSubtotal(cartItem.getSubtotle());orderitem.setOid(orders.getOid());orders.getOiList().add(orderitem);orderService.toOrderItem(orderitem);}cart.clearCart();request.getSession().setAttribute("orders", orders);return "order";}// 为定单付款@RequestMapping("/payOrder")public String payOrder(Orders orders,@RequestParam String receiveInfo,@RequestParam String phoNum,@RequestParam String accepter) throws Exception {orders.setReceiveinfo(receiveInfo);orders.setPhonum(phoNum);orders.setAccepter(accepter);orderService.payOrder(orders);return "redirect:myOrder.action?page=1";}//payOrderAganin@RequestMapping("/payOrderAganin")public String payOrderAganin(@RequestParam int oid,HttpServletRequest request){Orders noPayOrder = orderService.findOrderByOid(oid);request.getSession().setAttribute("orders", noPayOrder);return "order";}// 查询myOrder@RequestMapping("/myOrder")public String myOrder(@RequestParam int page, Model model,HttpServletRequest request) throws Exception {User loginUser = (User) request.getSession().getAttribute("loginUser");PageBean<Orders> pageBean = orderService.findOrderByUidAndPage(page,loginUser.getUid());model.addAttribute("pageBean", pageBean);return "orderList";}// 确认收货@RequestMapping("/updateState")public String updateState(@RequestParam int oid ) throws Exception {orderService.updateOrderStatus(oid, 3);return "redirect:myOrder.action?page=1";}
}

购物车管理控制层:

@Controller
public class cartController {@Autowiredprivate ProductService productService;
//  添加到购物车@RequestMapping("/addCart")public String addCart(HttpServletRequest request,@RequestParam int pid,@RequestParam int count ,Model model){Product product = productService.finbProductByPid(pid);
//      存进一个购物项CartItem cartItem = new CartItem();cartItem.setCount(count);cartItem.setProduct(product);cartItem.setSubtotle(count*product.getShopPrice());
//      存进购物车Cart cart=getCart(request);cart.addCart(cartItem);return "cart";}
//  查看我的购物车@RequestMapping("/myCart")public String myCart(HttpServletRequest request,Model model){User loginUser = (User) request.getSession().getAttribute("loginUser");if (loginUser == null) {model.addAttribute("message","您还没有登录!");return "msg";}return "cart";}// 清空购物车@RequestMapping("/clearCart")public String clearCart(HttpServletRequest request){Cart cart=getCart(request);cart.clearCart();return "redirect:myCart.action";}
//  删除某个购物项@RequestMapping("/delProFromCart")public String delProFromCart(@RequestParam int pid,HttpServletRequest request){Cart cart=getCart(request);cart.delProFromCart(pid);return "redirect:myCart.action";}public Cart getCart(HttpServletRequest request) {Cart cart = (Cart) request.getSession().getAttribute("cart");if (cart == null) {cart = new Cart();request.getSession().setAttribute("cart", cart);}return cart;}
}

后台管理员管理控制层:

@Controller
public class AdminController {@Autowiredprivate UserService userService;@Autowiredpublic CategoryService categoryService;@Autowiredpublic CategorySecondService categorySecondService;@Autowiredpublic ProductService productService;@Autowiredprivate OrderService orderService;@Autowiredprivate MessageService messageService;@RequestMapping("/admin/admin_findAll")public String admin_findAll(Model model, HttpServletRequest request) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}List<User> userList = userService.admin_findAll();model.addAttribute("userList", userList);return "admin/user/list";}@RequestMapping("/admin/adminCategory_findAll")public String adminCategory_findAll(Model model, HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}List<Category> categoryList = categoryService.adminbFindCategory();/*for (Category category : categoryList) {System.out.println(category.getCname());}*/model.addAttribute("categoryList", categoryList);return "admin/category/list";}@RequestMapping("/admin/adminCategory_add")public String adminCategory_add(Model model,HttpServletRequest request) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}
//      List<Category> categoryList = categoryService.adminbFindCategory();
//      model.addAttribute("categoryList", categoryList);return "admin/category/add";}@RequestMapping("/admin/adminCategory_save")public String adminCategory_save(@RequestParam String cname,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Category addCategory = new Category();addCategory.setCname(cname);categoryService.addCategory(addCategory);return "redirect:/admin/adminCategory_findAll.action";}@RequestMapping("/admin/adminCategory_edit")public String adminCategory_delete(@RequestParam int cid, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Category existCategory = categoryService.findCategory(cid);model.addAttribute("existCategory", existCategory);return "admin/category/edit";}@RequestMapping("/admin/adminCategory_update")public String adminCategory_update(@RequestParam int cid,@RequestParam String cname,HttpServletRequest request) {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Category category = new Category();category.setCid(cid);category.setCname(cname);categoryService.adminCategory_update(category);return "redirect:/admin/adminCategory_findAll.action";}@RequestMapping("/admin/adminCategory_delete")public String adminCategory_delete(@RequestParam int cid,HttpServletRequest request) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}categorySecondService.adminCategorySecond_deleteByCid(cid);categoryService.deleteCategoryByCid(cid);return "redirect:/admin/adminCategory_findAll.action";}// admin 的二级分类的管理@RequestMapping("/admin/adminCategorySecond_findAllByPage")public String adminCategorySecond_findAllByPage(@RequestParam int page,Model model,HttpServletRequest request) {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}PageBean<Categorysecond> csPageBean = categorySecondService.adminCategorySecond_findAllByPage(page);/*List<Categorysecond> list = csPageBean.getList();for (Categorysecond categorysecond : list) {System.out.println(categorysecond.getCsname());}*/model.addAttribute("csPageBean", csPageBean);return "admin/categorysecond/list";}@RequestMapping("admin/adminCategorySecond_addPage")public String adminCategorySecond_addPage(Model model,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}List<Category> categoryList = categoryService.adminbFindCategory();model.addAttribute("categoryList", categoryList);return "admin/categorysecond/add";}@RequestMapping("admin/adminCategorySecond_save")public String adminCategorySecond_save(@RequestParam String csname,@RequestParam int cid,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Categorysecond categorysecond = new Categorysecond();categorysecond.setCsname(csname);categorysecond.setCid(cid);categorySecondService.adminCategorySecond_save(categorysecond);return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";}@RequestMapping("admin/adminCategorySecond_edit")public String adminCategorySecond_edit(@RequestParam int csid,Model model,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Categorysecond findByCsid = categorySecondService.findByCsid(csid);model.addAttribute("findByCsid", findByCsid);return "admin/categorysecond/edit";}@RequestMapping("admin/adminCategorySecond_update")public String adminCategorySecond_update(@RequestParam String csname,@RequestParam int csid,HttpServletRequest request){Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Categorysecond categorysecond = new Categorysecond();categorysecond.setCsname(csname);categorysecond.setCsid(csid);categorySecondService.adminCategorySecond_update(categorysecond);return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";}@RequestMapping("admin/adminCategorySecond_delete")public String adminCategorySecond_delete(@RequestParam int csid,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}categorySecondService.adminCategorySecond_delete(csid);return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";}//admin的商品管理@RequestMapping("/admin/adminProduct_findAllByPage")public String adminProduct_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}PageBean<Product> allProPageBean = productService.findAllProduct(page);model.addAttribute("allProPageBean", allProPageBean);return "admin/product/list";}@RequestMapping("/admin/adminProduct_addPage")public String adminProduct_addPage(Model model,HttpServletRequest request) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}//查询出所有的二级分类List<Categorysecond> cslist = categorySecondService.findAll();/*for (Categorysecond categorysecond : cslist) {System.out.println(categorysecond.getCsname());}*/model.addAttribute("cslist", cslist);return "admin/product/add";}@RequestMapping("/admin/adminProduct_save")public String adminProduct_save(Product product,HttpServletRequest request,MultipartFile file) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}product.setPdate(new Date());
//      上传图片if (file != null) {String path = request.getServletContext().getRealPath("/products");String uploadFileName = file.getOriginalFilename();String fileName = UUIDUtiils.getUUID()+uploadFileName;File diskFile = new File(path + "//" + fileName);file.transferTo(diskFile);product.setImage("products/" + fileName);}System.out.println(product.getImage());productService.adminProduct_save(product);return "redirect:/admin/adminProduct_findAllByPage.action?page=1";}@RequestMapping("admin/adminProduct_deletecs")public String adminProduct_deletecs(@RequestParam int pid,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}productService.adminProduct_deletecs(pid);return "redirect:/admin/adminProduct_findAllByPage.action?page=1";}/*** 编辑商品* * @param pid* @param model* @param request* @return* @throws Exception*/@RequestMapping("admin/adminProduct_edit")public String adminProduct_edit(@RequestParam int pid,Model model,HttpServletRequest request) throws Exception{Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Product product = productService.finbProductByPid(pid);model.addAttribute("findByPid", product);//查询出所有的二级分类List<Categorysecond> cslist = categorySecondService.findAll();model.addAttribute("cslist", cslist);return "admin/product/edit";}@RequestMapping("/admin/adminProduct_update")public String adminProduct_update(Product product,HttpServletRequest request,MultipartFile file) throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}product.setPdate(new Date());
//      上传图片if (file != null) {String path = request.getServletContext().getRealPath("/products");String uploadFileName = file.getOriginalFilename();String fileName = UUIDUtiils.getUUID()+uploadFileName;File diskFile = new File(path + "//" + fileName);file.transferTo(diskFile);product.setImage("products/" + fileName);}productService.adminProduct_update(product);return "redirect:/admin/adminProduct_findAllByPage.action?page=1";}/** 订单管理模块  **/@RequestMapping("/admin/adminOrder_findAllByPage")public String adminOrder_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}PageBean<Orders> allProPageBean = orderService.findAllOrderByStateAndPage(page);model.addAttribute("pageBean", allProPageBean);return "admin/order/list";}//adminOrder_findByState@RequestMapping("/admin/adminOrder_findByState")public String adminOrder_findByState(@RequestParam int page,@RequestParam int state, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}PageBean<Orders> allProPageBean = orderService.findAllOrderByStateAndPage(state,page);model.addAttribute("pageBean", allProPageBean);return "admin/order/list";}//订单详情//adminOrder_findOrderItem@RequestMapping("/admin/adminOrder_findOrderItem")public String adminOrder_findOrderItem(@RequestParam int oid, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}Orders orderItems = orderService.findOrderByOid(oid);model.addAttribute("orderItems", orderItems);return "admin/order/list";}//更新订单状态@RequestMapping("/admin/adminOrder_updateState")public String adminOrder_updateState(@RequestParam int oid, @RequestParam int status, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}orderService.updateOrderStatus(oid, status);return "redirect:/admin/adminOrder_findAllByPage.action?page=1";}//后台留言管理 @RequestMapping("/admin/adminMessage_findAllByPage")public String adminMessage_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}PageBean<Message> pageBean = messageService.findAllMessageByPage(page);model.addAttribute("pageBean", pageBean);return "admin/message/list";}@RequestMapping("/admin/adminMessage_delete")public String adminOrder_updateState(@RequestParam int messageid, Model model,HttpServletRequest request)throws Exception {Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");if(adminuserLogin==null){request.getSession().setAttribute("message","对不起您还没有登录");return "admin/index";}messageService.deleteMessage(messageid);return "redirect:/admin/adminMessage_findAllByPage.action?page=1";}}

源码获取:俺的博客首页 "资源" 里下载!

Java项目:超市购物商城管理系统(java+SSM+JSP+jQuery+Mysql)相关推荐

  1. Java项目:超市收银管理系统(java+SSM+HTML+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统主要实现的功能有:收银.报表.用户管理.商品管理.销售管理.进货退货管理.仓库管 理等等功能. 二.项目运行 环境配置: ...

  2. Java项目:家居购物商城系统(java+html+jdbc+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能: Java Web精品项目源码,家居商城分类展示,商品展示, 商品下单,购物车,个人中心,后台管理,用户管理,商品管理, ...

  3. Java项目:在线电子商城管理系统(java+SpringBoot+Thymeleaf+bootstrap+jQ+layui+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 项目介绍 本项目分为管理员与普通用户两种角色, 管理员角色包含以下功能: 发货,后台登录后首页,商品管理,商城类别增删改查,用户管理,管理员 ...

  4. 基于javaweb的水果生鲜超市商城管理系统(java+ssm+jsp+jquery+mysql)

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

  5. 基于javaweb的个人pc电脑商城系统(java+ssm+jsp+jquery+mysql)

    基于javaweb的个人pc电脑商城系统(java+ssm+jsp+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/mye ...

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

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

  7. Java项目:水果生鲜超市商城管理系统(java+SSM+JSP+jQuery+Mysql)

    源码获取:俺的博客首页 "资源" 里下载! 项目介绍 该项目为前后台项目,分为普通用户与管理员两种角色,前台普通用户登录,后台管理员登录: 管理员角色包含以下功能: 管理员登录,用 ...

  8. Java项目:快递取件管理系统(java+SSM+JSP+jQuery+Mysql)

    源码获取:俺的博客首页 "资源" 里下载! 项目介绍 车险理赔管理系统源码,分为两个角色,一个管理员,一个普通用户 主要功能说明: 管理员角色包含以下功能:管理员登录,个人资料修改 ...

  9. Java项目:网上图书商城系统(java+SSM+Jsp+MySQL+Redis+JWT+Shiro+RabbitMQ+EasyUI)

    源码获取:博客首页 "资源" 里下载! 这个项目涉及到Shiro整合JWT.秒杀功能所具备的基本要求(限流.乐观锁.接口隐藏.JMeter高并发测试等等).消息中间件RabbitM ...

最新文章

  1. Python基础教程:内置类型之生成器
  2. 重做实验七 寻址方式在结构化数据访问中的应用
  3. 阳光学院计算机科学与技术需要英语四级,给各位想报阳光的朋友一点建议!来自学长的亲身经历!...
  4. Tomcat集群快速入门:Nginx+Tomcat搭建集群
  5. 记录第一次部署servlet实例
  6. 送人玫瑰,手留余香,如果本博客帮助到你了,帮忙点开本篇投上一票
  7. androidsettitle方法_Android 去掉title bar的3个方法
  8. weex android app例子,weex中修改android app图标和欢迎页
  9. 关于查询结果插入新表中 怪哉怪哉
  10. 今晚直播丨用高效的Oracle性能诊断工具,让运维工作轻松起来!
  11. 2018暑期周总结报告(四)
  12. [读书笔记]Linux命令行与shell编程读书笔记01
  13. 为什么物理隔离的网络,也会中毒?怎么进行防护?
  14. M1 Mac YYKit 报错
  15. 深入linux网络编程(四):使用asio搭建商用服务器
  16. 新版微信文件夹路径FileStorage变成了MsgAttach
  17. 宇枫资本上班族理财的方法
  18. css3的animation动画属性实现闹钟左右摇摆
  19. 网页设计基础(HTML)
  20. 中国的电子商务新时代

热门文章

  1. 企业网站运营包含哪些方法和技巧?
  2. mysql upgrade错误,升级mysql_upgrade 提示错误FATAL ERROR: Upgrade failed的原因
  3. git hub使用秘籍
  4. java位运算原理及应用
  5. Python中的异常处理raise介绍
  6. 安徽工程大学数据库实验五代码
  7. Android actionBar复用
  8. 无尽的悲伤 无感无感
  9. (一) Ubuntu下Qt引入FFmpeg
  10. 阿里云全方位布局物联网