SSM项目之商铺系统

编程入门 行业动态 更新时间:2024-10-12 01:27:52

SSM项目之<a href=https://www.elefans.com/category/jswz/34/1751865.html style=商铺系统"/>

SSM项目之商铺系统

我们完成了商品的product,那么我们之前留了个坑,删除商品类别

我们知道在建表的时候我们将product的product_category_id设置为外键和商品类别表关联

那么要删除商品类别时就需要先将商品下的商品类别id置为空,我们来实现这个功能

实现:

DAO:

通过传入的商品类别id来完成操作

看mapper.xml

    <!--将商品类别下的商品的商品类别字段全部置为空,否则外键约束不能直接删除--><update id="updateProductCategoryToNull">UPDATE tb_productSET product_category_id=NULLWHERE product_category_id = #{productCategoryId}</update>

 我们通过商品类别id将商品的商品类别id全置为空

接下来看我们修改后的删除商品类别的方法了:

//删除商品类别,注意删除商品类别时需要先将该商品类别下的商品id置为空,因为有外键约束,所以直接删除会出错@Transactional@Overridepublic ProductCategoryExecution deleteProductCategory(long productCategoryId, long shopId) {try {//删除商品类别下的商品int effectNum= productDao.updateProductCategoryToNull(productCategoryId);if (effectNum<0)//不能等于0,可能存在商品类别下无商品的情况{throw  new RuntimeException("商品类别更新失败");}}catch (ProductOperationException e){throw new RuntimeException("deleteProductCategory err"+e.getMessage());}try {int effectNum=productCategoryDao.deleteProductCategory(productCategoryId,shopId);if (effectNum<=0){throw new ProductCategoryOperationException("商品类别删除失败");}else {return new ProductCategoryExecution(ProductCategoryStateEnum.SUCCESS);//成功操作}}catch (ProductCategoryOperationException e){throw new ProductCategoryOperationException("deleteProductCategory error:"+e.getMessage());}}
}

我们在删除商品类别前,要先将这个商品类别下商品的商品类别id这一字段置为空

更多推荐

SSM项目之商铺系统

本文发布于:2024-02-06 23:49:23,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1751652.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:商铺   项目   系统   SSM

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!