Spring+Mybatis整合案例电商模块五

本文详细介绍了如何通过ListServlet处理商品数据的修改与新增操作,包括接收用户输入、处理图片上传、更新数据库记录等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修改商品数据

ListServlet

private String receiveImage() {
        try{
            // 如果用户上传了这里代码是不会出现异常 了
            // 如果没有上传这里出现异常
            Part part = request.getPart("image");
            // 保存到项目的路径中去
            String sysPath = request.getSession().getServletContext().getRealPath("/resources/images/article");
            // 定义一个新的图片名称
            String fileName = UUID.randomUUID().toString() ;
            //  提取图片的类型
            // 上传文件的内容性质
            String contentDispostion = part.getHeader("content-disposition");
            // 获取上传文件的后缀名
            String suffix = contentDispostion.substring(contentDispostion.lastIndexOf("."), contentDispostion.length() - 1);
            fileName+=suffix ;
            // 把图片保存到路径中去
            part.write(sysPath+"/"+fileName);
            return fileName ;
        }catch (Exception e){
            e.printStackTrace();
            return null ;
        }
    }

    private void updateArticle() {
        //接受界面提交的参数
        // 获取请求参数 ----普通表单元素
        String code = request.getParameter("code");
        String title = request.getParameter("titleStr");
        String supplier = request.getParameter("supplier");
        String locality = request.getParameter("locality");
        String price = request.getParameter("price");
        String storage = request.getParameter("storage");
        String description = request.getParameter("description");
        String id = request.getParameter("id"); // 物品编号
        String picUrl = request.getParameter("picUrl"); // 物品旧封面
        //定义一个商品对象封装界面提交的参数
        Article article = new Article();

        //接受用户可能上传的封面
        String newUrl = receiveImage();
        picUrl = newUrl!=null?newUrl:picUrl;

        article.setId(Integer.valueOf(id));
        article.setImage(picUrl);
        ArticleType type = new ArticleType();
        type.setCode(code);
        article.setArticleType(type);
        article.setTitle(title);
        article.setSupplier(supplier);
        article.setLocality(locality);
        article.setPrice(Double.parseDouble(price));
        article.setStorage(Integer.parseInt(storage));
        article.setDescription(description);
        shopService.updateArticle(article);
        request.setAttribute("tip","修改商品成功");
        showUpdate();

    }

shopService

shopServiceImpl

ArticleMapper

ArticleMapper.xml

发布商品信息

ListServlet

private void addArticle() throws ServletException, IOException, ParseException {
        // 接收界面提交的参数
        // 获取请求参数 ----普通表单元素
        String code = request.getParameter("code");
        String title = request.getParameter("titleStr");
        String supplier = request.getParameter("supplier");
        String locality = request.getParameter("locality");
        String price = request.getParameter("price");
        String putawayDate = request.getParameter("putawayDate");
        String storage = request.getParameter("storage");
        String description = request.getParameter("description");
        // 定义一个商品对象封装界面提交的参数
        Article article = new Article();
        // 发布时间 : 2018-04-25 21:34:40
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        article.setPutawayDate(sdf.parse(putawayDate));

        // 接收用户可能上传的封面
        String imageUrl = receiveImage();
        article.setImage(imageUrl);
        ArticleType type = new ArticleType();
        type.setCode(code);
        article.setArticleType(type);
        article.setTitle(title);
        article.setSupplier(supplier);
        article.setLocality(locality);
        article.setPrice(Double.parseDouble(price));
        article.setStorage(Integer.parseInt(storage));
        article.setDescription(description);
        shopService.saveArticle(article);
        request.setAttribute("tip","添加商品成功");
        getAll();
    }

shopService

shopSeviceImpl

ArticleMapper

ArticleMapper.xml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值