基于javaweb+mysql的jsp+servlet家居购物商城系统(java+jsp+jdbc+mysql)

基于javaweb+mysql的jsp+servlet家居购物商城系统(java+jsp+jdbc+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

基于javaweb+mysql的JSP+Servlet家居购物商城系统(java+jsp+jdbc+mysql)

一、项目简述

功能: Java Web精品项目源码,家居商城分类展示,商品展示, 商品下单,购物车,个人中心,后台管理,用户管理,商品管理,分类管理等等。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: Jdbc+ Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload

            response.sendRedirect("login.jsp");
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}

/**
 * 验证码
 */
@WebServlet("/checkCodeServlet")
public class CheckCodeServlet extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		
		//服务器通知浏览器不要缓存
		response.setHeader("pragma","no-cache");
		response.setHeader("cache-control","no-cache");
		response.setHeader("expires","0");
		
		//在内存中创建一个长80,宽30的图片,默认黑色背景
		//参数一:长
		//参数二:宽
		//参数三:颜色
		int width = 136;
		int height = 38;
		BufferedImage image = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
		
		//获取画笔
		Graphics g = image.getGraphics();
		//设置画笔颜色为灰色
		g.setColor(Color.GRAY);
		//填充图片
		g.fillRect(0,0, width,height);
		
		//产生4个随机验证码,12Ey

@WebServlet("/toUserInfoServlet")
public class ToUserInfoServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("name");

        if (user != null) {
            UserService service = new UserServiceImpl();
            User newUser = service.findUserByUserId(user.getUser_id());

            CategoryService service1 = new CategoryServiceImpl();
            List<Category> flist = service1.findCategoryListByName("father");
            List<Category> clist = service1.findCategoryListByName("child");
            request.setAttribute("flist",flist);
            request.setAttribute("clist",clist);
            request.setAttribute("user",newUser);

            //查看该用户的各种订单数量
            OrderService service2 = new OrderServiceImpl();
            List<Order> orders = service2.findOrderByUserId(user.getUser_id());
            int a1 = 0;
            int a2 = 0;
            int a3 = 0;
            int a4 = 0;
            for (Order o:orders) {
                if ("0".equals(o.getIs_pay()) && "0".equals(o.getIs_ship()) && "0".equals(o.getIs_receipt())) {
                    a1++;
                }
                if ("1".equals(o.getIs_pay()) && "0".equals(o.getIs_ship()) && "0".equals(o.getIs_receipt())) {
                    a2++;
                }
                if ("1".equals(o.getIs_pay()) && "1".equals(o.getIs_ship()) && "0".equals(o.getIs_receipt())) {
                    a3++;
                }
                if ("1".equals(o.getIs_pay()) && "1".equals(o.getIs_ship()) && "1".equals(o.getIs_receipt())) {
                    a4++;
                }
            }
            request.setAttribute("a1",a1);
            request.setAttribute("cartCount",cartCount);

            //添加此订单为待支付订单

            //添加此订单的订单列表
            //查询该订单中商品及数量
            int product_quantity = Integer.valueOf(cs.getProduct_quantity());
            int product_id = p.getProduct_id();

            Order order = new Order(System.currentTimeMillis() +""+ user.getUser_id(),user.getUser_id(),totalPrice,new Date(),"0","0","0",product_id,product_quantity);
            ProductService service5 = new ProductServiceImpl();
            Product product = service5.findProductById(product_id);
            order.setProduct_name(product.getProduct_name());
            order.setProduct_photo(product.getProduct_photo());
            order.setProduct_price(product.getProduct_price());

            request.setAttribute("order",order);
            OrderService service4 = new OrderServiceImpl();
            service4.addOrder(order);
            request.getRequestDispatcher("order.jsp").forward(request, response);
        } else {
            response.sendRedirect("login.jsp");
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}

@WebServlet("/updateUserListServlet")
public class UpdateUserListServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        UserService service = new UserServiceImpl();
        PageBean<User> pb = service.findUserByPage(currentPage,rows);
        request.setAttribute("pb",pb );

//        List<User> list = service.findAllUser();
//
//        //放到请求对象域里
//        request.setAttribute("userlist", list);
//        request.setAttribute("tsum", arr[0]);
//        request.setAttribute("tpage", arr[1]);
        request.setAttribute("cpage", cpage);

        if(keyword != null) {
            request.setAttribute("searchParams", "&keywords="+keyword);
        }

        request.getRequestDispatcher("admin_user.jsp").forward(request, response);

    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}


@WebServlet("/userListServlet")
public class UserListServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        int cpage = 1; //当前页
        int count = 5; //每页显示条数

        //获取用户指定的页面
        String cp = request.getParameter("cp");

        //接收用户搜索的关键字
        String keyword = request.getParameter("keywords");

        if(cp!=null) {
            cpage = Integer.parseInt(cp);
        }

        /*****************************************************/
        String currentPage = request.getParameter("currentPage");//当前页码
        String rows = request.getParameter("rows");//每页显示条数

        if (currentPage == null || "".equals(currentPage)) {
            currentPage = "1";
        }
        if (rows == null || "".equals(rows)) {
            rows = "5";
        }

        UserService service = new UserServiceImpl();
        PageBean<User> pb = service.findUserByPage(currentPage,rows);
        request.setAttribute("pb",pb );

//        List<User> list = service.findAllUser();
//
//        //放到请求对象域里
//        request.setAttribute("userlist", list);
//        request.setAttribute("tsum", arr[0]);
//        request.setAttribute("tpage", arr[1]);
        request.setAttribute("cpage", cpage);

        if(keyword != null) {
            request.setAttribute("searchParams", "&keywords="+keyword);
        }

        request.getRequestDispatcher("admin_user.jsp").forward(request, response);

    }
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		this.doGet(request,response);
	}
}

@WebServlet("/searchProductServlet")
public class SearchProductServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        String key = request.getParameter("key");
        ProductService service = new ProductServiceImpl();
        List<Product> list = service.findProductListByKey(key);
        request.setAttribute("productList",list);

        //查询购物车数量
        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("name");

        String cartCount = "0";
        CartService service1 = new CartServiceImpl();
    }
}

@WebServlet("/orderDetailServlet")
public class OrderDetailServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("name");
        UserService service = new UserServiceImpl();
        User newUser = service.findUserByUserId(user.getUser_id());
        request.setAttribute("user",newUser);

        CategoryService service1 = new CategoryServiceImpl();
        List<Category> flist = service1.findCategoryListByName("father");
        List<Category> clist = service1.findCategoryListByName("child");
        request.setAttribute("flist",flist);
        request.setAttribute("clist",clist);

        String oid = request.getParameter("oid");
        OrderService service2 = new OrderServiceImpl();
        Order order = service2.findOrderById(oid);

        request.setAttribute("order",order);

        AddressService service3 = new AddressServiceImpl();
        Address address = service3.findAddressByAddressId(order.getAddress_id());

        request.setAttribute("address",address);


                if (user != null) {
                    request.setAttribute("msg", "用户已存在");
                    request.setAttribute("userName", userName);
                    request.setAttribute("userPassword", userPassword);
                    request.setAttribute("enUserPassword", enUserPassword);
                    request.getRequestDispatcher("reg.jsp").forward(request, response);
                    return;
                } else {
                    User u = new User(userName,"无昵称哦",userPassword,null,"0","0","1","default_0.jpg");
                    service.addUser(u);

                    request.setAttribute("msg", "注册成功!");
                    request.getRequestDispatcher("reg.jsp").forward(request,response);
                }
            }
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}

        CartService service1 = new CartServiceImpl();
        if (user != null) {
            cartCount = String.valueOf(service1.findCartCountByUserId(user.getUser_id()));
        }else {
            cartCount = "?";
        }

        request.setAttribute("cartCount",cartCount);

        //查询评论
        int productId = Integer.valueOf(id);

        CommentService service3 = new CommentServiceImpl();
        List<Comment> comments= service3.findCommentByProductId(productId);
        request.setAttribute("comments",comments);

        System.out.println(comments);

        request.getRequestDispatcher("productview.jsp").forward(request, response);

/*
        //获取最近访问

        HttpSession session = request.getSession();

        //从SSESSIOn获取一下 ids

        List<Integer> ids = (List<Integer>)session.getAttribute("ids");

        if(ids == null){
            ids = new List<Integer>();
        }

        //最多放5, 如果多出5个将第一个删除
        if(ids.size() >= 5) {
            ids.remove(0);
        }

        // 添加列表里, 但只要一份
        if(id!=null && (!ids.contains(Integer.parseInt(id)))) {
            ids.add(Integer.parseInt(id));

        }

        session.setAttribute("ids", ids);

        ids= (List<Integer>)session.getAttribute("ids");

        if(ids!=null) {

            List<LMONKEY_PRODUCT> lastlylist = LMONKEY_PRODUCTDao.selectAllById(ids);

@WebServlet("/addProductServlet")
public class AddProductServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=utf-8");
        String fileName = "";

        SmartUpload su= new SmartUpload();
        su.initialize(this.getServletConfig(), request, response);
        try {
            su.setAllowedFilesList("jpg,gif,jpeg,png");
            su.upload();
            String id = String.valueOf(System.currentTimeMillis());
            Files uploadFiles = su.getFiles();
            fileName = uploadFiles.getFile(0).getFileExt();
            fileName = id+"."+fileName;

            File f = new File(this.getServletContext().getRealPath("/upload/product"));
            if (!f.exists() && !f.isDirectory()) {
                f.mkdir();
            }
            uploadFiles.getFile(0).saveAs("/upload/product/"+ fileName);

        } catch (SmartUploadException e) {
            e.printStackTrace();
        }

                User u = service.findUserByUserId(UserId);
                fileName = u.getUser_photo();
            }else {
                System.out.println("no kong");
                fileName =  UserId+"."+fileNameExt;
                File f = new File(this.getServletContext().getRealPath("/upload/user"));
                if (!f.exists() && !f.isDirectory()) {
                    f.mkdir();
                }
                uploadFiles.getFile(0).saveAs("/upload/user/"+ fileName);
            }

        } catch (SmartUploadException e) {
            e.printStackTrace();
        }

        int userId = Integer.valueOf(request.getParameter("userId"));
        String nickname = su.getRequest().getParameter("nickName");
        String username = su.getRequest().getParameter("name");
        String passWord = su.getRequest().getParameter("passWord");
        String sex = su.getRequest().getParameter("sex");
        String vip="0";
        String viptime="0";
        String status="1";
        User user = new User(username,nickname,passWord,sex,vip,viptime,status,fileName);
        user.setUser_id(userId);
        System.out.println(user);

        UserService service = new UserServiceImpl();
        service.updateUserById(user);

        PrintWriter out = response.getWriter();

        out.write("<script>");
        out.write("alert('更新成功!');");
        out.write("location.href='/HOMEECMS/userListServlet'");
        out.write("</script>");
        out.close();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}


                //计算商品价格
                String pid = request.getParameter("pid");
                String oid = request.getParameter("oid");
                String count = request.getParameter("count");

                ProductService service2 = new ProductServiceImpl();
                Product p = service2.findProductById(Integer.valueOf(pid));
                int price = p.getProduct_price();
                int totalPrice = price*Integer.valueOf(count);

                request.setAttribute("price",price);
                request.setAttribute("count",count);
                request.setAttribute("product",p);
                request.setAttribute("totalPrice",totalPrice);

                //查询购物车数量
                String cartCount = "0";
                CartService service3 = new CartServiceImpl();
                if (user != null) {
                    cartCount = String.valueOf(service3.findCartCountByUserId(user.getUser_id()));
                }else {
                    cartCount = "?";
                }
                request.setAttribute("cartCount",cartCount);
                OrderService service4 = new OrderServiceImpl();
                Order o = service4.findOrderById(oid);

                request.setAttribute("order",o);

            }else {
                CategoryService service1 = new CategoryServiceImpl();
                List<Category> flist = service1.findCategoryListByName("father");
                List<Category> clist = service1.findCategoryListByName("child");
                request.setAttribute("flist",flist);
                request.setAttribute("clist",clist);

                AddressService service = new AddressServiceImpl();
                List<Address> addresses = service.findAddressByUserId(user.getUser_id());
            order.setProduct_name(product.getProduct_name());
            order.setProduct_photo(product.getProduct_photo());
            order.setProduct_price(product.getProduct_price());

            request.setAttribute("order",order);
            OrderService service4 = new OrderServiceImpl();
            service4.addOrder(order);
            request.getRequestDispatcher("order.jsp").forward(request, response);
        } else {
            response.sendRedirect("login.jsp");
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}

@WebServlet("/updateUserListServlet")
public class UpdateUserListServlet extends HttpServlet {
        String id = request.getParameter("id");
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=utf-8");
        //创建商品服务层对象 查询该商品后传到前台
        ProductService service2 = new ProductServiceImpl();
        Product productById = service2.findProductById(Integer.valueOf(id));
        request.setAttribute("p",productById);

        //创建分类服务层对象 查询分类列表后传到前台
        CategoryService service = new CategoryServiceImpl();
        List<Category> flist =  service.findCategoryListByName("father");
        request.setAttribute("flist", flist);
        List<Category> clist =  service.findCategoryListByName("child");
        request.setAttribute("clist", clist);

        //查询该商品的二级和一级分类
        Category c = service.findCategoryByCid(productById.getProduct_cid());
        request.setAttribute("childC",c);
        Category f = service.findCategoryByCid(c.getCategory_parentid());
        request.setAttribute("fatherC",f);

        //查询二级分类商品
        List<Product> productList = service2.findProductByCategoryCid(c.getCategory_id());
        request.setAttribute("classlist",productList);

        //查询最近访问的商品,未实现,改为了查询所有商品
        List<Product> productAllList =  service2.findAllProduct();
        request.setAttribute("lastlist",productAllList);

        //查询购物车数量
        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("name");

        String cartCount = "0";
        CartService service1 = new CartServiceImpl();
        if (user != null) {
            cartCount = String.valueOf(service1.findCartCountByUserId(user.getUser_id()));
        }else {
            cartCount = "?";
        }

        request.setAttribute("cartCount",cartCount);

        //查询评论
        int productId = Integer.valueOf(id);

        CommentService service3 = new CommentServiceImpl();
        List<Comment> comments= service3.findCommentByProductId(productId);
        request.setAttribute("comments",comments);

        System.out.println(comments);

        request.getRequestDispatcher("productview.jsp").forward(request, response);

@WebServlet("/addUserServlet")
public class AddUserServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=utf-8");

        SmartUpload su = new SmartUpload();
        su.initialize(this.getServletConfig(), request, response);// 初始化
        String fileName = "";

        try {

            su.setAllowedFilesList("jpg,gif,jpeg,png");
            su.upload();
            String userName = su.getRequest().getParameter("userName");
            Files uploadFiles = su.getFiles();
            fileName = uploadFiles.getFile(0).getFileExt();
            fileName = userName+"."+fileName;

            File f = new File(this.getServletContext().getRealPath("/upload/user"));
            if (!f.exists() && !f.isDirectory()) {
                f.mkdir();
            }
            uploadFiles.getFile(0).saveAs("/upload/user/"+ fileName);

        } catch (SmartUploadException e) {
            e.printStackTrace();
        }

        String userName = su.getRequest().getParameter("userName");
        String nickname = su.getRequest().getParameter("nickname");
        String passWord = su.getRequest().getParameter("passWord");
        String rePassWord = su.getRequest().getParameter("rePassWord");
        String sex = su.getRequest().getParameter("sex");
        String status = su.getRequest().getParameter("status");

        User u = new User(userName,nickname,passWord,sex,"0","0",status,fileName);
        System.out.println(u);

            su.upload();
            String userName = su.getRequest().getParameter("userName");
            Files uploadFiles = su.getFiles();
            fileName = uploadFiles.getFile(0).getFileExt();
            fileName = userName+"."+fileName;

            File f = new File(this.getServletContext().getRealPath("/upload/user"));
            if (!f.exists() && !f.isDirectory()) {
                f.mkdir();
            }
            uploadFiles.getFile(0).saveAs("/upload/user/"+ fileName);

        } catch (SmartUploadException e) {
            e.printStackTrace();
        }

        String userName = su.getRequest().getParameter("userName");
        String nickname = su.getRequest().getParameter("nickname");
        String passWord = su.getRequest().getParameter("passWord");
        String rePassWord = su.getRequest().getParameter("rePassWord");
        String sex = su.getRequest().getParameter("sex");
        String status = su.getRequest().getParameter("status");

        User u = new User(userName,nickname,passWord,sex,"0","0",status,fileName);
        System.out.println(u);

        UserService service = new UserServiceImpl();
        Boolean flag = service.addUser(u);
        if (flag) {
            response.sendRedirect(request.getContextPath()+"/userListServlet");
        }else {
            PrintWriter out = response.getWriter();
            out.write("<script>");
            out.write("alert('新增用户失败!');");
            out.write("</script>");
            out.close();
        }


@WebServlet("/toProductViewServlet")
public class ToProductViewServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //获取参数商品id
        String id = request.getParameter("id");
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=utf-8");
        //创建商品服务层对象 查询该商品后传到前台
        ProductService service2 = new ProductServiceImpl();
        Product productById = service2.findProductById(Integer.valueOf(id));
        request.setAttribute("p",productById);

        //创建分类服务层对象 查询分类列表后传到前台
        CategoryService service = new CategoryServiceImpl();
        List<Category> flist =  service.findCategoryListByName("father");
        request.setAttribute("flist", flist);
        List<Category> clist =  service.findCategoryListByName("child");
        request.setAttribute("clist", clist);

        //查询该商品的二级和一级分类
        Category c = service.findCategoryByCid(productById.getProduct_cid());
        request.setAttribute("childC",c);
        Category f = service.findCategoryByCid(c.getCategory_parentid());
        request.setAttribute("fatherC",f);

        //查询二级分类商品

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值