java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java网上商城系统

Java实战之小蜜蜂扩音器网上商城系统的实现

作者:qq_1334611189

这篇文章主要介绍了如何利用Java实现简单的小蜜蜂扩音器网上商城系统,文中采用到的技术有JSP、Servlet 、JDBC、Ajax等,感兴趣的可以动手试一试

一、项目简述

用户功能模块: 用户注册: 用户登录:商品模块:订单模块;后台管理系统功能:管理员模块: 商品模块:订单管理模块 ;

二、项目运行

1.运行环境

JDK1.8+Tomcat8.5+MYSQL+Eclispe(Eclispe,MyEclispe,Sts,IntelliJ IDEA都支持,小伙伴自行配置即可)

2.技术栈

JSP + Servlet + JDBC + Ajax + JavaScript + CSS + +DBUtil 等等

三、效果图

四、核心代码

用户管理控制层

public class UserServlet extends BaseBackServlet {
 
    @Override
    public String add(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 UserServlet add方法");
        return null;
    }
 
    @Override
    public String delete(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 UserServlet delete方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        userDAO.delete(id);
        return "@admin_user_list";
    }
 
    @Override
    public String update(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 UserServlet update方法");
 
        Map<String, String> params = new HashMap<>();
        InputStream is = super.parseUpload(request, params);
        System.out.println(params);
 
        int id = Integer.parseInt(params.get("id"));
        String password = params.get("password");
 
        User user = userDAO.get(id);
        user.setPassword(password);
 
        userDAO.update(user);
 
        return "@admin_user_list";
    }
 
    @Override
    public String edit(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 UserServlet edit方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        User u = userDAO.get(id);
 
        request.setAttribute("u", u);
 
        return "admin/editUser.jsp";
    }
 
    @Override
    public String list(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 UserServlet list方法");
 
        List<User> us = userDAO.list(page.getStart(), page.getCount());
        int total = userDAO.getTotal();
        page.setTotal(total);
 
        request.setAttribute("us", us);
        request.setAttribute("page", page);
 
        return "admin/listUser.jsp";
    }
}

订单管理控制层

public class OrderServlet extends BaseBackServlet {
 
    @Override
    public String add(HttpServletRequest request, HttpServletResponse response, Page page) {
        return null;
    }
 
    @Override
    public String delete(HttpServletRequest request, HttpServletResponse response, Page page) {
        return null;
    }
 
    @Override
    public String update(HttpServletRequest request, HttpServletResponse response, Page page) {
        return null;
    }
 
    @Override
    public String edit(HttpServletRequest request, HttpServletResponse response, Page page) {
        return null;
    }
 
    public String delivery(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 OrderServlet delivery方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        Order o = orderDAO.get(id);
        o.setDeliveryDate(new Date());
        o.setStatus(OrderDAO.waitConfirm);
        orderDAO.update(o);
        return "@admin_order_list";
    }
 
    @Override
    public String list(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了 OrderServlet list方法");
 
        // 对订单对应的订单项进行初始化
        List<Order> os = orderDAO.list(page.getStart(), page.getCount());
        orderItemDAO.fill(os);
 
        int total = orderDAO.getTotal();
        page.setTotal(total);
 
        request.setAttribute("os", os);
        request.setAttribute("page", page);
 
        return "admin/listOrder.jsp";
    }
}

品类控制层

public class CategoryServlet extends BaseBackServlet {
 
    @Override
    public String add(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了category add方法");
 
        Map<String,String> params = new HashMap<>();
        InputStream is = super.parseUpload(request, params);
 
        System.out.println(params);
        String name = params.get("name");
        Category c = new Category();
        c.setName(name);
        categoryDAO.add(c);
 
        File imageFolder = new File(request.getSession().getServletContext().getRealPath("img/category"));
        File file = new File(imageFolder, c.getId() + ".jpg");
 
        try{
            if(null != is && 0 != is.available()){
                try(
                        FileOutputStream fos = new FileOutputStream(file);
                        ){
                    byte[] b = new byte[1024 * 1024];
                    int length = 0;
                    while(-1 != (length = is.read(b))){
                        fos.write(b, 0, length);
                    }
                    fos.flush();
                    //通过以下代码,将文件保存为jsp格式
                    BufferedImage img = ImageUtil.change2jpg(file);
                    ImageIO.write(img, "jpg", file);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "@admin_category_list";
    }
 
    @Override
    public String delete(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了category delete方法");
        int id = Integer.parseInt(request.getParameter("id"));
        categoryDAO.delete(id);
        return "@admin_category_list";
    }
 
    @Override
    public String update(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了category update方法");
 
        Map<String,String> params = new HashMap<>();
        InputStream is = super.parseUpload(request, params);
 
        System.out.println(params);
        String name = params.get("name");
        int id = Integer.parseInt(params.get("id"));
 
        Category c = new Category();
        c.setName(name);
        c.setId(id);
        categoryDAO.update(c);
 
        File imageFolder = new File(request.getSession().getServletContext().getRealPath("img/category"));
        File file = new File(imageFolder, c.getId() + ".jpg");
 
        try{
            if(null != is && 0 != is.available()){
                try(
                        FileOutputStream fos = new FileOutputStream(file);
                ){
                    byte[] b = new byte[1024 * 1024];
                    int length = 0;
                    while(-1 != (length = is.read(b))){
                        fos.write(b, 0, length);
                    }
                    fos.flush();
                    //通过以下代码,将文件保存为jsp格式
                    BufferedImage img = ImageUtil.change2jpg(file);
                    ImageIO.write(img, "jpg", file);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "@admin_category_list";
    }
 
    @Override
    public String edit(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了category edit方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        Category category = categoryDAO.get(id);
        request.setAttribute("c", category);
        return "admin/editCategory.jsp";
    }
 
    @Override
    public String list(HttpServletRequest request, HttpServletResponse response, Page page) {
        List<Category> cs = categoryDAO.list(page.getStart(), page.getCount());
        int total = categoryDAO.getTotal();
        page.setTotal(total);
 
        request.setAttribute("thecs", cs);
        request.setAttribute("page", page);
 
        return "admin/listCategory.jsp";
    }
}

产品控制层

public class ProductServlet extends BaseBackServlet {
 
    @Override
    public String add(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了Product add方法");
 
        Map<String, String> params = new HashMap<>();
        InputStream inputStream = super.parseUpload(request, params);
        System.out.println(params);
 
        int cid = Integer.parseInt(params.get("cid"));
        Category c = categoryDAO.get(cid);
 
        String name = params.get("name");
        String subTitle = params.get("subTitle");
        float originalPrice = Float.parseFloat(params.get("originalPrice"));
        float promotePrice = Float.parseFloat(params.get("promotePrice"));
        int stock = Integer.parseInt(params.get("stock"));
 
        Product p = new Product();
 
        p.setCategory(c);
        p.setName(name);
        p.setSubTitle(subTitle);
        p.setOriginalPrice(originalPrice);
        p.setPromotePrice(promotePrice);
        p.setStock(stock);
        p.setCreateDate(new Date());
 
        productDAO.add(p);
        return "@admin_product_list?cid=" + cid;
    }
 
    @Override
    public String delete(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了Product delete方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        Product p = productDAO.get(id);
        productDAO.delete(id);
        return "@admin_product_list?cid=" + p.getCategory().getId();
    }
 
    @Override
    public String update(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了Product update方法");
 
        Map<String, String> params = new HashMap<>();
        InputStream inputStream = super.parseUpload(request, params);
 
        int cid = Integer.parseInt(params.get("cid"));
        Category c = categoryDAO.get(cid);
 
        int id = Integer.parseInt(params.get("id"));
        String name = params.get("name");
        String subTitle = params.get("subTitle");
        float originalPrice = Float.parseFloat(params.get("originalPrice"));
        float promotePrice = Float.parseFloat(params.get("promotePrice"));
        int stock = Integer.parseInt(params.get("stock"));
 
        Product p = new Product();
 
        p.setId(id);
        p.setName(name);
        p.setSubTitle(subTitle);
        p.setOriginalPrice(originalPrice);
        p.setPromotePrice(promotePrice);
        p.setStock(stock);
        p.setCategory(c);
        p.setCreateDate(new Date());
 
        productDAO.update(p);
        return "@admin_product_list?cid=" + p.getCategory().getId();
    }
 
    @Override
    public String edit(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了Product edit方法");
 
        int id =Integer.parseInt(request.getParameter("id"));
        Product p = productDAO.get(id);
        request.setAttribute("p",p);
        return "admin/editProduct.jsp";
    }
 
    public String updatePropertyValue(HttpServletRequest request, HttpServletResponse response, Page page){
        System.out.println("调用了Product updatePropertyValue方法");
 
        int  pvid = Integer.parseInt(request.getParameter("pvid"));
        String value = request.getParameter("value");
 
        PropertyValue pv = propertyValueDAO.get(pvid);
        pv.setValue(value);
 
        propertyValueDAO.update(pv);
 
        return "%success";
    }
 
    public String editPropertyValue(HttpServletRequest request, HttpServletResponse response, Page page){
        System.out.println("调用了Product editPropertyValue方法");
 
        int id = Integer.parseInt(request.getParameter("id"));
        Product p = productDAO.get(id);
        request.setAttribute("p", p);
 
        // 初始化属性,将产品对应的属性全部
        propertyValueDAO.init(p);
 
        List<PropertyValue> pvs = propertyValueDAO.list(p.getId());
 
        request.setAttribute("pvs", pvs);
 
        return "admin/editPropertyValue.jsp";
    }
 
    @Override
    public String list(HttpServletRequest request, HttpServletResponse response, Page page) {
        System.out.println("调用了Product list方法");
 
        int cid = Integer.parseInt(request.getParameter("cid"));
        Category c = categoryDAO.get(cid);
 
        List<Product> ps = productDAO.list(cid, page.getStart(), page.getCount());
 
        int total = productDAO.getTotal(cid);
        page.setTotal(total);
        page.setParam("&cid=" + c.getId());
 
        request.setAttribute("ps", ps);
        request.setAttribute("c", c);
        request.setAttribute("page", page);
 
        return "admin/listProduct.jsp";
    }
}

以上就是Java实战之小蜜蜂扩音器网上商城系统的实现的详细内容,更多关于Java网上商城系统的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文