——————————DescriptionStart——————————
运行环境 Java≥8、MySQL≥5.7、Tomcat≥8
开发工具 eclipse/idea/myeclipse/sts等均可配置运行
适用 课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的JSP+Servlet嘟嘟网上商城系统(java+jdbc+jsp+mysql+ajax)
一、项目简述
功能: 商品的分类展示,用户的注册登录,购物车,订单结算, 购物车加减,后台商品管理,分类管理,订单管理等等功 能。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: Jdbc+ Servlert + Jsp + css + JavaScript + JQuery + Ajax + Fileupload等等。
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 @WebServlet(name = "admin_goods_add",urlPatterns = "/admin/goods_add") public class AdminGoodsAddServlet extends HttpServlet { private GoodsService gService = new GoodsService(); protected void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { DiskFileItemFactory factory=new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); try { List<FileItem> list = upload.parseRequest(request); Goods g = new Goods(); for (FileItem item:list) { if (item.isFormField()) { String fieldName = item.getFieldName(); if ("name" .equals(fieldName)){ g.setName(item.getString("utf-8" )); }else if ("price" .equals(fieldName)){ g.setPrice(Integer.parseInt(item.getString("utf-8" ))); }else if ("intro" .equals(fieldName)){ g.setIntro(item.getString("utf-8" )); }else if ("stock" .equals(fieldName)){ g.setStock(Integer.parseInt(item.getString("utf-8" ))); }else if ("typeid" .equals(fieldName)){ g.setTypeid(Integer.parseInt(item.getString("utf-8" ))); } }else { if (item.getInputStream().available()<=0 )continue ; String fileName = item.getName(); fileName = fileName.substring(fileName.lastIndexOf("." )); fileName = "/" +new Date().getTime()+fileName; String path = this .getServletContext().getRealPath("/picture" )+fileName; InputStream in = item.getInputStream(); FileOutputStream out = new FileOutputStream(path); byte [] buffer = new byte [1024 ]; int len=0 ; while ( (len=in.read(buffer))>0 ) { out.write(buffer); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } package com.demo.common.listener;@WebListener() public class ApplicationListener implements ServletContextListener , HttpSessionListener , HttpSessionAttributeListener { TypeService tsService=new TypeService(); public ApplicationListener () { } public void contextInitialized (ServletContextEvent sce) { sce.getServletContext().setAttribute("typeList" ,tsService.GetAllType()); } public void contextDestroyed (ServletContextEvent sce) { } public void sessionCreated (HttpSessionEvent se) { } public void sessionDestroyed (HttpSessionEvent se) {
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 if (request.getParameter("status" ) != null ) { status=Integer.parseInt(request.getParameter("status" ) ) ; } request.setAttribute("status" , status); int pageNumber = 1 ; if (request.getParameter("pageNumber" ) != null ) { try { pageNumber=Integer.parseInt(request.getParameter("pageNumber" ) ) ; } catch (Exception e) { } } if (pageNumber<=0 ) pageNumber=1 ; Page p = oService.getOrderPage(status,pageNumber); if (p.getTotalPage()==0 ) { p.setTotalPage(1 ); p.setPageNumber(1 ); } else { if (pageNumber>=p.getTotalPage()+1 ) { p = oService.getOrderPage(status,pageNumber); } } request.setAttribute("p" , p); request.getRequestDispatcher("/admin/order_list.jsp" ).forward(request, response); } } package com.demo.servlet;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 @WebServlet(name = "admin_goods_recommend",urlPatterns = "/admin/goods_recommend") public class AdminGoodsRecommendServlet extends HttpServlet { private GoodsService gService = new GoodsService(); protected void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int id = Integer.parseInt(request.getParameter("id" )); String method = request.getParameter("method" ); int typeTarget=Integer.parseInt(request.getParameter("typeTarget" )); if (method.equals("add" )) { gService.addRecommend(id, typeTarget); }else { gService.removeRecommend(id, typeTarget); } request.getRequestDispatcher("/admin/goods_list" ).forward(request, response); } protected void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } package com.demo.servlet;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 g.setCover(item.getString("utf-8" )); }else if ("image1" .equals(fieldName)){ g.setImage1(item.getString("utf-8" )); }else if ("image2" .equals(fieldName)){ g.setImage2(item.getString("utf-8" )); }else if ("stock" .equals(fieldName)){ g.setStock(Integer.parseInt(item.getString("utf-8" ))); }else if ("typeid" .equals(fieldName)){ g.setTypeid(Integer.parseInt(item.getString("utf-8" ))); }else if ("pageNumber" .equals(fieldName)){ pageNumber=Integer.parseInt(item.getString("utf-8" )); }else if ("type" .equals(fieldName)){ type = Integer.parseInt(item.getString("utf-8" )); } }else { if (item.getInputStream().available()<=0 )continue ; String fileName = item.getName(); fileName = fileName.substring(fileName.lastIndexOf("." )); fileName = "/" +new Date().getTime()+fileName; String path = this .getServletContext().getRealPath("/picture" )+fileName; InputStream in = item.getInputStream(); FileOutputStream out = new FileOutputStream(path); byte [] buffer = new byte [1024 ]; int len=0 ; while ( (len=in.read(buffer))>0 ) { out.write(buffer); } in.close(); out.close(); String fieldName = item.getFieldName(); if ("cover" .equals(fieldName)){ g.setCover("/picture" +fileName); } else if ("image1" .equals(fieldName)){ g.setImage1("/picture" +fileName); } else if ("image2" .equals(fieldName)){ g.setImage2("/picture" +fileName); } } } gService.update(g); request.getRequestDispatcher("/admin/goods_list?pageNumber=" +pageNumber+"&type=" +type).forward(request, response); } catch (FileUploadException e) {
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 if ("cover" .equals(fieldName)){ g.setCover("/picture" +fileName); } else if ("image1" .equals(fieldName)){ g.setImage1("/picture" +fileName); } else if ("image2" .equals(fieldName)){ g.setImage2("/picture" +fileName); } } } gService.insert(g); request.getRequestDispatcher("/admin/goods_list" ).forward(request, response); } catch (FileUploadException e) { e.printStackTrace(); } } protected void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } package com.demo.common.listener;@WebListener() public class ApplicationListener implements ServletContextListener , HttpSessionListener , HttpSessionAttributeListener {
——————————PayStart——————————
项目链接: https://javayms.github.io?id=121422312105200ht https://javayms.pages.dev?id=121422312105200ht