基于springboot的校园跑腿系统
博主主页:猫头鹰源码
博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战
主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询
文末联系获取
项目介绍:
该系统创作于2022年5月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,页面使用html,具有完整的业务逻辑,适合选题:校园跑腿、跑腿、校园帮等。
项目功能:
数据库表结构文档:
系统包含技术:
后端:springboot、mybatis
前端:layui,js,css等,html页面
开发工具:idea
数据库:mysql 5.7
JDK版本:jdk1.8
部分截图说明:
下面是用户首页,可以看到部分任务和商品
登录页面如下:
分页展示商品,可以筛选
点击某一个,可以看到商品详情,可以加入购物车
所有任务
任务详情查看
商品订单
管理员-首页
管理员-商家认证
管理员-骑手认证
管理员-用户管理
商家-添加商品
商家-商品管理
部分代码:
拦截器
@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {HttpSession session = request.getSession();if(session.getAttribute("userInfo") != null){return true;}// 不符合条件的给出提示信息,并转发到主页面request.setAttribute("msg", "您还没有登录,请先登录!");request.getRequestDispatcher("/logout").forward(request, response);//返回true通过,返回false拦截return false;}
文件上传
/*** 文件上传* @param dropFile* @param request* @return*/@ResponseBody@RequestMapping(value = "/avatar", method = RequestMethod.POST)public Map<String, Object> acticleAvatar(MultipartFile dropFile, HttpServletRequest request) throws IOException {Map<String, Object> result = new HashMap<>();//获取文件后缀String fileName = dropFile.getOriginalFilename();String fileSuffix = fileName.substring(fileName.lastIndexOf('.'));//文件存放路径String fileDirPath = new String(uploadDir);File fileDir = new File(fileDirPath);//判断文件是否存在if (!fileDir.exists()){fileDir.mkdirs();}File file = new File(fileDir.getAbsolutePath()+ File.separator+ UUID.randomUUID() + fileSuffix);try {dropFile.transferTo(file);} catch (IOException e) {e.printStackTrace();}//传到前端result.put("fileName", "http://localhost:"+port+"/upload/"+file.getName());return result;}
首页相关操作
//首页@GetMapping("/")public String userIframe(Model model){Map mp = new HashMap<>();mp.put("limit","1");mp.put("status","01");List<CustomOrder> customOrderList = customOrderService.queryFilter(mp);model.addAttribute("customOrderList",customOrderList);List<Goods> goods = goodsService.queryFilter(mp);model.addAttribute("goods",goods);return "show";}//自定义订单@GetMapping("/corder")public String corder(Model model, String searchName, Integer pageNum, Integer pageSize){Map mp = new HashMap<>();mp.put("name",searchName);mp.put("status","01");if(pageNum==null){pageNum =1;}if(pageSize==null){pageSize =10;}PageHelper.startPage(pageNum,pageSize);List<CustomOrder> customOrders = customOrderService.queryFilter(mp);PageInfo<CustomOrder> customOrderList = new PageInfo<>(customOrders);model.addAttribute("customOrderList",customOrderList);return "CustomOrder";}//商品订单@GetMapping("/sorder")public String sorder(Model model, String searchName, Integer pageNum, Integer pageSize){Map mp = new HashMap<>();mp.put("no",searchName);mp.put("status","01");if(pageNum==null){pageNum =1;}if(pageSize==null){pageSize =10;}PageHelper.startPage(pageNum,pageSize);List<Orders> orderss = ordersService.queryFilter(mp);PageInfo<Orders> ordersList = new PageInfo<>(orderss);model.addAttribute("ordersList",ordersList);return "goodsOrder";}//商品@GetMapping("/good")public String good(Model model, String storeName, String name, Integer pageNum, Integer pageSize){Map mp = new HashMap<>();mp.put("storeName",storeName);mp.put("name",name);mp.put("status","01");if(pageNum==null){pageNum =1;}if(pageSize==null){pageSize =8;}PageHelper.startPage(pageNum,pageSize);List<Goods> goodsList = goodsService.queryFilter(mp);PageInfo<Goods> goods = new PageInfo<>(goodsList);model.addAttribute("goods",goods);return "good";}//商品详情@GetMapping("/goodDetail")public String goodDetail(String id, Model model){Goods good = goodsService.selectById(id);model.addAttribute("id",id);model.addAttribute("good",good);return "goodDetail";}
商品操作
/**列表数据*/@GetMapping("/list")@ResponseBodypublic PageResultVo findGoods(Goods goods, Integer limit, Integer page, HttpSession session){String type = (String)session.getAttribute("type");if(type.equals("03")){User user = (User)session.getAttribute("userInfo");goods.setUid(String.valueOf(user.getId()));}PageHelper.startPage(page,limit);List<Goods> goodsList = goodsService.selectByCondition(goods);PageInfo<Goods> pages = new PageInfo<>(goodsList);return JsonData.table(goodsList,pages.getTotal());}/**编辑详情*/@GetMapping("/edit")@ResponseBodypublic Goods edit(Model model, String id){return goodsService.selectById(id);}/**编辑*/@PostMapping("/edit")@ResponseBodypublic JsonData edit(Goods goods){int a = goodsService.updateById(goods);if (a > 0) {return JsonData.success(null,"编辑成功!");} else {return JsonData.fail("编辑失败");}}/**删除*/@PostMapping("/del")@ResponseBodypublic JsonData del(String id){try{goodsService.deleteById(Integer.parseInt(id));}catch(Exception ex){JsonData.fail("出现错误");}return JsonData.success(null,"删除成功");}
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~
基于springboot的校园跑腿系统相关推荐
- Springboot毕设项目基于springboot的校园招聘系统dm1tu(java+VUE+Mybatis+Maven+Mysql)
Springboot毕设项目基于springboot的校园招聘系统dm1tu(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + ...
- 基于springboot的校园店铺系统
博主主页:猫头鹰源码 博主简介:Java领域优质创作者.CSDN博客专家.公司架构师.全网粉丝5万+.专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等).简历模 ...
- 基于Android的校园跑腿系统
文章目录 校园跑腿系统需求 一.使用到的云数据库 二.部分功能展示 1.发布任务(包含虚拟支付功能) 2.评价功能 3.完成订单或取消订单 4.消息删除 源码链接 校园跑腿系统需求 软件能实现跑腿业务 ...
- java基于springboot+vue的校园跑腿系统 nodejs前后端分离
随着我国教育制度的改革的发展,各大高校的学生数量也在不断的增加.当前大学生的生活和消费习惯等导致他们更喜欢通过网络来获取自己想要的商品和服务,这也是导致当前校园跑腿盛行的主要原因.为了能够让更多的学生 ...
- java基于springboot+vue的校园跑腿系统
随着我国教育制度的改革的发展,各大高校的学生数量也在不断的增加.当前大学生的生活和消费习惯等导致他们更喜欢通过网络来获取自己想要的商品和服务,这也是导致当前校园跑腿盛行的主要原因.为了能够让更多的学生 ...
- [附源码]java毕业设计校园跑腿系统
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- java基于安卓Android/微信小程序的高校校园跑腿系统 uniapp
随着计算机技术的发展,带来社会各行业的进步,信息化逐渐运用到人们的生活中,电子商务的发展又促进了快递行业的诞生,由此延伸出相应的跑腿业务,特别是在校园内最后一公里为模式的平台迅速发展起来.为解决高校内 ...
- 基于Java毕业设计校园跑腿平台源码+系统+mysql+lw文档+部署软件
基于Java毕业设计校园跑腿平台源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园跑腿平台源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 开发语言: ...
- 基于JAVA学校校园网站系统(Springboot框架) 开题报告
本科生毕业论文 基于Java(springboot框架)学校校园网站系统 开题报告 学 院: 专 业: 计算机科学与技术 年 级: 学生姓名: 指导教师: XXXX大学本科生 ...
最新文章
- TensorFlow Keras API用法
- Python 命名空间/名称查询 对效率的影响
- Tomcat windows下安装
- 计算机专业勤学善思感悟,勤学善思作文600字
- 3-间隔插入排序C实现(希尔排序铺垫)
- 架构师技术文档:Redis+Nginx+Dubbo+Spring+架构师精选视频
- DevExpress之TreeList节点绑定图片
- Effective STL(第7条)
- Microsoft SQL Server 2000整合规划
- 创建表的时候要添加目标语句use
- 什么样的领导最有魅力?
- 淘宝婴儿商品销量分析
- 她在IT圈里摸爬滚打的十年
- android迅雷下载搭建开发环境
- IDEA 2018.3版本Spring Boot 热部署
- Cadence IC618使用
- JavaScript学习(六)数据类型
- Apollo6.0代码Lattice算法详解——Part5: 生成横纵向轨迹
- 前端秋招面试(7)- 微众银行
- java aes对称加密算法_JavaAES128对称加密算法实现
热门文章
- GitHub + jsDelivr + PicGo + Imagine 打造稳定快速、高效免费图床
- EdgeVerve PegaSystems
- 视频号扩展链接怎样添加
- 【蓝桥杯】 算法训练 旅行家的预算
- 漫画《修车危情》漫画修车危情第一话完整版
- ntldr is compressed 解决方法 attrib -c ntldr
- 自定义Seebar进度条、进度条背景颜色,更换进度滑动icon。
- Complete Internet Repair(电脑网络修复工具)官方中文版V8.1.3.5222 | 网络修复工具使用后仍不能上网?快试试万能网络修复大师
- 全国2020年8月自考信息资源管理真题和答案
- Linux中查看jdk版本