基于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

        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);
    }
}

@WebServlet("/updateProductServlet")
public class UpdateProductServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
//        response.setCharacterEncoding("utf-8");
        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();
            int productId = Integer.valueOf(request.getParameter("productId"));
            Files uploadFiles = su.getFiles();
            fileName = uploadFiles.getFile(0).getFileExt();
            fileName = productId + "." + fileName;

            File f = new File(this.getServletContext().getRealPath("/upload/product"));
            if (!f.exists() && !f.isDirectory()) {
                f.mkdirs();

@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();
        if (user != null) {
            cartCount = String.valueOf(service1.findCartCountByUserId(user.getUser_id()));
        }else {
            cartCount = "?";
        }
        request.setAttribute("cartCount",cartCount);

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

        //没实现分类添加图片
        request.setAttribute("link", "img/banner1.jpg");

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

    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }
}
                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());
                request.setAttribute("address",addresses);

                //计算商品价格
                String pid = request.getParameter("pid");
                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);

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

                //添加此订单的订单列表
                //查询该订单中商品及数量
                int product_quantity = Integer.valueOf(count);
                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();
        doPost(request,response);
    }
}

@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();
            }

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

        //没实现分类添加图片
        request.setAttribute("link", "img/banner1.jpg");

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

    }

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

/**
 * Servlet Filter implementation class Register
 */
@WebFilter("/register")
public class Register implements Filter {

    /**
     * Default constructor. 
     */
    public Register() {
        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);

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

        //没实现分类添加图片
        request.setAttribute("link", "img/banner1.jpg");

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

    }

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

            out.write("alert('更新成功!');");
            out.write("location.href='toMyInfoServlet'");
            out.write("</script>");
            out.close();
        }else {
            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的图片,默认黑色背景
		//参数一:长
		//参数二:宽
		//参数三:颜色

/**
 * Servlet Filter implementation class Register
 */
@WebFilter("/register")
public class Register implements Filter {

    /**
     * Default constructor. 
     */
    public Register() {
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see Filter#destroy()
	 */
	public void destroy() {
		// TODO Auto-generated method stub
	}

	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		
		HttpServletRequest req = (HttpServletRequest)request;
		HttpServletResponse resp = (HttpServletResponse)response;
		
		req.setCharacterEncoding("UTF-8");
		resp.setContentType("text/html;charset=utf-8");
            out.close();
        }

    }

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

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

        HttpSession session = request.getSession();
        User user = (User) session.getAttribute("name");
        if (user != null) {

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

            try {

                su.setAllowedFilesList("jpg,gif,jpeg,png");
                su.upload();

@WebServlet("/regServlet")
public class RegServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        HttpSession session = request.getSession();
        UserService service = new UserServiceImpl();

        String userName = request.getParameter("userName").trim();
        String userPassword = request.getParameter("userPassword").trim();
        String enUserPassword = request.getParameter("enUserPassword".trim());
        String verifycode = request.getParameter("verifycode".trim());

        String checkcode_server = (String) session.getAttribute("CHECKCODE_SERVER");
        session.removeAttribute("CHECKCODE_SERVER");//确保验证一次性
        if (!verifycode.equalsIgnoreCase(checkcode_server)){
            request.setAttribute("msg","验证码错误");
            request.setAttribute("userName",userName);
            request.setAttribute("userPassword",userPassword);
            request.setAttribute("enUserPassword",enUserPassword);

            request.getRequestDispatcher("reg.jsp").forward(request,response);
            return;
        }else {
            if (!userPassword.equals(enUserPassword)) {
                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 user = service.findUserByUserName(userName);

                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");
                    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);
    }
}

@WebServlet("/toUserInfoServlet")
public class ToUserInfoServlet extends HttpServlet {

        //创建分类服务层对象 查询分类列表后传到前台
        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);

//            OrderListService service5 = new OrderListServiceImpl();
//            service5.addOrderList(orderList);

            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("/selectProductList")
public class SelectProductList extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //查询购物车数量
        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);

/**
 * Servlet Filter implementation class Register
 */
@WebFilter("/register")
public class Register implements Filter {

    /**
     * Default constructor. 
     */
    public Register() {
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see Filter#destroy()
	 */
	public void destroy() {
		// TODO Auto-generated method stub
	}

	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		
		HttpServletRequest req = (HttpServletRequest)request;
		HttpServletResponse resp = (HttpServletResponse)response;
		
		req.setCharacterEncoding("UTF-8");
		resp.setContentType("text/html;charset=utf-8");
		
		String userName = req.getParameter("userName");
		
		PrintWriter out = resp.getWriter();
		
		if(userName.equals("")) {
			out.write("<script>");
			out.write("alert('用户名称不能为空');");
                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());
                request.setAttribute("address",addresses);

                //计算商品价格
                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);

    }

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

@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);
            AddressService service = new AddressServiceImpl();
            List<Address> addresses = service.findAddressByUserId(user.getUser_id());
            request.setAttribute("address",addresses);

            CartService servicem= new CartServiceImpl();
            List<Cart> cartList= servicem.findCartListByUserId(user.getUser_id());
            Cart cs = new Cart();
            String eids = request.getParameter("eids");
            for(int i=0; i<cartList.size(); i++) {
               if(cartList.get(i).getCart_id()==Integer.valueOf(eids)){
                   cs = cartList.get(i);
                   break;
               }
            }
            //计算商品价格eids

//            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(cs.getProduct_id()));
            int price = p.getProduct_price();
            int totalPrice = price*Integer.valueOf(cs.getProduct_quantity());

            request.setAttribute("price",price);
            request.setAttribute("count",cs.getProduct_quantity());
            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);

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

            //添加此订单的订单列表
            //查询该订单中商品及数量
            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());

请添加图片描述

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值