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

 更新时间:2022年03月07日 10:48:37   作者: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网上商城系统的资料请关注脚本之家其它相关文章!

相关文章

  • Java实现餐厅点餐系统的实例代码

    Java实现餐厅点餐系统的实例代码

    这篇文章主要介绍了Java实现餐厅点餐系统,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 使用阿里云OSS的服务端签名后直传功能的流程分析

    使用阿里云OSS的服务端签名后直传功能的流程分析

    这篇文章主要介绍了使用阿里云OSS的服务端签名后直传功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Spring boot如何通过@Scheduled实现定时任务及多线程配置

    Spring boot如何通过@Scheduled实现定时任务及多线程配置

    这篇文章主要介绍了Spring boot如何通过@Scheduled实现定时任务及多线程配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 详解SpringBoot配置devtools实现热部署

    详解SpringBoot配置devtools实现热部署

    本篇文章主要介绍了详解SpringBoot配置devtools实现热部署 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Java开发中POJO和JSON互转时如何忽略隐藏字段的问题

    Java开发中POJO和JSON互转时如何忽略隐藏字段的问题

    这篇文章主要介绍了Java开发中POJO和JSON互转时如何忽略隐藏字段的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • 探索分析Redis AOF日志与数据持久性

    探索分析Redis AOF日志与数据持久性

    这篇文章主要为大家介绍了探索分析Redis AOF日志与数据持久性详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Java 超详细讲解Spring MVC异常处理机制

    Java 超详细讲解Spring MVC异常处理机制

    Spring MVC中提供了一个通用的异常处理机制,它提供了一个成熟、简洁并且清晰的异常处理方案。当使用Spring MVC开发Web应用时,利用这套现成的机制进行异常处理也更加自然并且高效
    2022-04-04
  • Java实现Floyd算法求最短路径

    Java实现Floyd算法求最短路径

    这篇文章主要为大家详细介绍了Java实现Floyd算法求最短路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • 基于String实现同步锁的方法步骤

    基于String实现同步锁的方法步骤

    这篇文章主要给大家介绍了关于基于String实现同步锁的方法步骤,文中通过示例代码介绍的非常详细,对大家学习或者使用String具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • mybatisplus 多表关联条件分页查询的实现

    mybatisplus 多表关联条件分页查询的实现

    本文主要介绍了mybatisplus 多表关联条件分页查询的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01

最新评论