基于JavaSpringmvc+myabtis+html的鲜花商城系统设计和实现

news/2024/11/13 4:10:18/

基于JavaSpringmvc+myabtis+html的鲜花商城系统设计和实现

博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域
作者主页 超级帅帅吴
Java项目精品实战案例《500套》
欢迎点赞 收藏 ⭐留言
文末获取源码联系方式

文章目录

  • 基于JavaSpringmvc+myabtis+html的鲜花商城系统设计和实现
  • 前言介绍:
  • 功能设计:
  • 功能截图:
    • 首页主要功能介绍:
    • 商品详情:
    • 商品评论交流模块
    • 添加了论坛帖子系列功能:
    • 购物车模块:
    • 我的订单模块:
    • 我的收藏模块:
    • 普通用户后台中心:
    • 订单信息管理:
  • 后端主要功能:
    • 用户管理:
    • 商品系列管理:
    • 商品信息管理:
    • 商品详情修改:
    • 商品评价管理:
    • 论坛管理:
    • 首页轮播图管理:
    • 订单信息管理:
  • 代码实现:
  • 论文报告:
  • 获取源码:

前言介绍:

随着国内经济形势的不断发展,中国互联网进入了一个难得的高峰发展时期,这使得中外资本家纷纷转向互联网市场。然而,许多管理领域的不合理结构,人员不足以及管理需求的增加使得更多的人具备了互联网管理的意识。
随着国内经济形势的不断发展,中国互联网进入了一个难得的高峰发展时期,这使得中外资本家纷纷转向互联网市场。然而,许多管理领域的不合理结构,人员不足以及管理需求的增加使得更多的人具备了互联网管理的意识。

功能设计:

开发工具:IDEA 2021.3、navicat for mysql 、postman。

开发语言:java、jdk1.8、mysql5

硬件环境:Win 10操作系统、Google浏览器等。

主要技术:springmvc、mybatis、html css jsp、mysql等

本鲜花商城系统主要功能设计为实现管理员;个人中心、系统公告管理、用户管理、鲜花类型管理、鲜商品信息管理、订单评价管理、鲜论坛管理、系统管理、订单管理,用户;个人中心、订单评价管理、我的收藏管理、订单管理,前台首页;首页、商品信息、论坛信息、我的、跳转到后台、购物车客服等信息管理功能。

功能截图:

普通用户登录注册:
在这里插入图片描述

首页主要功能介绍:

商品信息、论坛信息、我的、跳转到后台、购物车客服等信息管理功能
在这里插入图片描述

商品详情:

可加入购物车、修改数量、立即购买和收藏商品
在这里插入图片描述

商品评论交流模块

在这里插入图片描述

添加了论坛帖子系列功能:

普通用户可以发布、可以对帖子进行交流讨论等
在这里插入图片描述
帖子详情数据查看、可以在底部评论
在这里插入图片描述
在我的个人中心可以查看我的发布、我的订单、我的地址修改以及我的收藏模块和个人信息模块
在这里插入图片描述

购物车模块:

要选择收货地址信息等
在这里插入图片描述

我的订单模块:

在这里插入图片描述

我的收藏模块:

在这里插入图片描述

普通用户后台中心:

在这里插入图片描述

订单信息管理:

在这里插入图片描述

后端主要功能:

用户管理:

在这里插入图片描述

商品系列管理:

在这里插入图片描述

商品信息管理:

在这里插入图片描述

商品详情修改:

在这里插入图片描述

商品评价管理:

在这里插入图片描述

论坛管理:

在这里插入图片描述

首页轮播图管理:

在这里插入图片描述

订单信息管理:

在这里插入图片描述

代码实现:

订单模块:

 /*** 订单模块* 后端接口* @author  admin* @email  132190@163.com* @date 2022-02-07 14:37:22*/
@RestController
@RequestMapping("/orders")
public class OrdersController {@Autowiredprivate OrdersService ordersService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,OrdersEntity orders, HttpServletRequest request){if(!request.getSession().getAttribute("role").toString().equals("管理员")) {orders.setUserid((Long)request.getSession().getAttribute("userId"));}EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();PageUtils page = ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,OrdersEntity orders, HttpServletRequest request){EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();PageUtils page = ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( OrdersEntity orders){EntityWrapper<OrdersEntity> ew = new EntityWrapper<OrdersEntity>();ew.allEq(MPUtil.allEQMapPre( orders, "orders")); return R.ok().put("data", ordersService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(OrdersEntity orders){EntityWrapper< OrdersEntity> ew = new EntityWrapper< OrdersEntity>();ew.allEq(MPUtil.allEQMapPre( orders, "orders")); OrdersView ordersView =  ordersService.selectView(ew);return R.ok("查询订单成功").put("data", ordersView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){OrdersEntity orders = ordersService.selectById(id);return R.ok().put("data", orders);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){OrdersEntity orders = ordersService.selectById(id);return R.ok().put("data", orders);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody OrdersEntity orders, HttpServletRequest request){orders.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(orders);orders.setUserid((Long)request.getSession().getAttribute("userId"));ordersService.insert(orders);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody OrdersEntity orders, HttpServletRequest request){orders.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(orders);ordersService.insert(orders);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody OrdersEntity orders, HttpServletRequest request){//ValidatorUtils.validateEntity(orders);ordersService.updateById(orders);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){ordersService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<OrdersEntity> wrapper = new EntityWrapper<OrdersEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}if(!request.getSession().getAttribute("role").toString().equals("管理员")) {wrapper.eq("userid", (Long)request.getSession().getAttribute("userId"));}int count = ordersService.selectCount(wrapper);return R.ok().put("count", count);}}
 
@Service("ordersService")
public class OrdersServiceImpl extends ServiceImpl<OrdersDao, OrdersEntity> implements OrdersService {@Overridepublic PageUtils queryPage(Map<String, Object> params) {Page<OrdersEntity> page = this.selectPage(new Query<OrdersEntity>(params).getPage(),new EntityWrapper<OrdersEntity>());return new PageUtils(page);}@Overridepublic PageUtils queryPage(Map<String, Object> params, Wrapper<OrdersEntity> wrapper) {Page<OrdersView> page =new Query<OrdersView>(params).getPage();page.setRecords(baseMapper.selectListView(page,wrapper));PageUtils pageUtil = new PageUtils(page);return pageUtil;}@Overridepublic List<OrdersVO> selectListVO(Wrapper<OrdersEntity> wrapper) {return baseMapper.selectListVO(wrapper);}@Overridepublic OrdersVO selectVO(Wrapper<OrdersEntity> wrapper) {return baseMapper.selectVO(wrapper);}@Overridepublic List<OrdersView> selectListView(Wrapper<OrdersEntity> wrapper) {return baseMapper.selectListView(wrapper);}@Overridepublic OrdersView selectView(Wrapper<OrdersEntity> wrapper) {return baseMapper.selectView(wrapper);}}

论文报告:

在这里插入图片描述

获取源码:

大家点赞、收藏、关注、评论啦
🍅查看下方微信号获取联系方式 📝
🚀🚀🚀精彩系列推荐
Java毕设项目精品实战案例《500套》
精彩专栏推荐订阅:在下方专栏


http://www.ppmy.cn/news/56303.html

相关文章

PHP面试宝典之PHP篇

PHP数组函数&#xff1f; array_merge&#xff08;合并&#xff09; array_unique&#xff08;去重&#xff09; array_intersect&#xff08;交集&#xff09; array_diff&#xff08;差集&#xff09; array_map&#xff08;回调&#xff09; array_values&#xff08;重置索…

用Java编写飞机大战游戏

飞机大战&#xff08;Plane War&#xff09;是一款非常受欢迎的小游戏&#xff0c;它通过增加玩家的难度和挑战性&#xff0c;促使玩家不断提高自己的操作能力和反应速度&#xff0c;并在升级过程中逐步拓展游戏世界的规模和内容。本文将介绍如何使用Java编写一个简单的飞机大战…

纷享销客标讯通,大客招标经营的杀手锏

呀&#xff0c;对手都中标了&#xff0c;我咋才知道&#xff1f;呀&#xff0c;能不能预测目标客户的招标&#xff1f;呀&#xff0c;对手有什么客户可以挖一挖&#xff1f; 呀&#xff0c;ROI 300倍的奥秘是什么&#xff1f; 纷享销客标讯通&#xff0c;帮助企业&#xff1a…

Flink作业任务的9种状态简单介绍

​ 当创建一个Flink任务后&#xff0c;该任务可能会经历多种状态。目前Flink给任务共定义了9种状态&#xff0c;包括&#xff1a;Created&#xff0c;Running&#xff0c;Finished&#xff0c;Cancelling&#xff0c;Canceled&#xff0c;Restarting&#xff0c;Failing&#x…

LinkedHashSet源码分析

LinkedHashSet的基本介绍 LinkedHashSet是HashSet的子类 LinkedHashSet底层是一个LinkedHashMap&#xff0c;底层维护了一个数组双向链表 LinkedHashSet 根据元素的hashCode值来决定元素的存储位置&#xff0c;同时使用链表维护元素的次序(图)&#xff0c;这使得元素看起来是…

DBeaver 没有菜单项 生成SQL Generate SQL

文章目录 Intro问题的根本有无该菜单项取决于你的查询SQL是单表还是多表&#xff1f;单表查询的结果集的菜单多表关联查询的结果集的菜单 测试版本 Intro DBeaver 是一款很棒的多平台、支持多数据源的GUI数据库客户端。 有一个我经常使用的功能就是&#xff1a; 当我查询到一个…

eletron+react+antd+node开发桌面小程序并打包(electron-packager+electron-builder)

首先罗列一下项目中用到的技术&#xff1a; electron, react&#xff0c;antd, typescript, node&#xff0c;及打包命令&#xff1a;pkg&#xff0c;electron-packager&#xff0c;electron-builder及child_process实现多进程 需求&#xff1a;开发一个桌面应用&#xff0c;左…

【热门框架】Maven依赖传递,可选依赖以及排除依赖指的是什么?有什么意义?

Maven依赖传递是指当一个项目依赖另一个项目时&#xff0c;Maven会自动下载并构建这些依赖项&#xff0c;同时还会将这些依赖项所依赖的其他项一并下载并构建。这个过程会一直递归下去&#xff0c;直到所有依赖的项都被下载并构建完成。这个过程就称为依赖传递。 依赖传递可以…