首页 > 其他分享 >基于springboot的校园跑腿系统

基于springboot的校园跑腿系统

时间:2023-09-04 17:33:19浏览次数:32  
标签:return springboot pageSize 校园 跑腿 mp pageNum model String


博主主页猫头鹰源码

博主简介:Java领域优质创作者、博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

项目介绍: 

该系统创作于2022年5月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,页面使用html,具有完整的业务逻辑,适合选题:校园跑腿、跑腿、校园帮等。

项目功能:

基于springboot的校园跑腿系统_spring boot

基于springboot的校园跑腿系统_javaweb_02

数据库表结构文档: 

基于springboot的校园跑腿系统_mybatis_03

系统包含技术:

后端:springboot、mybatis
前端:layui,js,css等,html页面
开发工具:idea
数据库:mysql 5.7
JDK版本:jdk1.8

部分截图说明:

下面是用户首页,可以看到部分任务和商品

基于springboot的校园跑腿系统_spring boot_04

 登录页面如下:

基于springboot的校园跑腿系统_mybatis_05

分页展示商品,可以筛选

基于springboot的校园跑腿系统_spring boot_06

点击某一个,可以看到商品详情,可以加入购物车

基于springboot的校园跑腿系统_javaweb_07

所有任务

基于springboot的校园跑腿系统_javaweb_08

任务详情查看 

基于springboot的校园跑腿系统_java_09

  

商品订单

基于springboot的校园跑腿系统_javaweb_10

管理员-首页

基于springboot的校园跑腿系统_mybatis_11

 管理员-商家认证

基于springboot的校园跑腿系统_javaweb_12

 管理员-骑手认证

基于springboot的校园跑腿系统_javaweb_13

 管理员-用户管理

基于springboot的校园跑腿系统_spring boot_14

商家-添加商品

基于springboot的校园跑腿系统_spring boot_15

 商家-商品管理

基于springboot的校园跑腿系统_后端_16

部分代码:

 拦截器

@Override
    public 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")
    @ResponseBody
    public 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")
    @ResponseBody
    public Goods edit(Model model, String id){
        return goodsService.selectById(id);
    }


    /**编辑*/
    @PostMapping("/edit")
    @ResponseBody
    public JsonData edit(Goods goods){
        int a = goodsService.updateById(goods);
        if (a > 0) {
          return JsonData.success(null,"编辑成功!");
        } else {
          return JsonData.fail("编辑失败");
        }
    }


    /**删除*/
    @PostMapping("/del")
    @ResponseBody
    public JsonData del(String id){
        try{
          goodsService.deleteById(Integer.parseInt(id));
        }catch(Exception ex){
          JsonData.fail("出现错误");
        }
        return JsonData.success(null,"删除成功");
    }

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

标签:return,springboot,pageSize,校园,跑腿,mp,pageNum,model,String
From: https://blog.51cto.com/u_14544277/7353331

相关文章

  • 基于springboot自习室预约管理
    博主主页:猫头鹰源码博主简介:Java领域优质创作者博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询文末联系获取项目介绍: 该系统创作于2023年3月,基于springboot技术,数据层......
  • SpringBoot+Nacos+OpenFeign实现服务的注册、发现、远程调用
    一、概述微服务的开发必定会用到SpringBoot、Nacos(服务发现、注册、配置中心)、OpenFeign(服务远程调用,也就是通过注解调用其他服务的接口)。今天写这篇是想把这三个功能集成在一起。让他们一起参与微服务的开发工作。要实现的目标:nacos要能够注册及发现服务,openfeign......
  • SpringBoot 读取配置文件
    在resources文件下创建新的配置文件,如test.yml:es:name:elasticsearch准备使用@PropertySource注解来读取test.yml内容,但@PropertySource本身不支持yml文件,所以创建以下类:publicclassPropertySourceConfigextendsDefaultPropertySourceFactory{@Override......
  • SpringBoot 下使用Swagger3.0
    swagger3.0和2.x的版本有一些配置是不一样的,故记录下。pom.xml依赖<dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version></dependency>Config.java内容@Configura......
  • SpringBoot--实用开发
    SpringBoot实用开发热部署热部署是指在你修改项目BUG的时候对JSP或JAVA类进行了修改在不重启WEB服务器前提下能让修改生效。但是对配置文件的修改除外!导入springboot开发者工具坐标:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boo......
  • SpringBoot--运维实用
    SpringBoot运维实用篇打包与运行windows打包在maven中双击package打包另外如果打包报utf-8的错,在pom中添加<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><version>2.6</version>&l......
  • SpringBoot--基础
    SpringBoot--基础SpringBoot的设计目的是用来简化Spring应用的初始搭建以及开发过程idea创建springboot入门步骤(需要idea联网)创建一个空项目之后再项目构建中添加springboot相关配置本处的springboot版本为2.7.14,如果maven报错可以自己修改一下版本,最新的3.0版本......
  • 基于springboot的个人云盘管理系统的设计与实现
    传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装个人云盘管理系统软件来发挥其高效地信息处理的作用,可以规范信息管理流程,让管理工作可以系统化和程序化,同时,个人云盘管理系统的有效运用......
  • 基于springboot流浪动物管理系统
    在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以,对流浪动物信息管理的提升,也为了对流浪动物信息进行更好的维护,流浪动物管理系统的出现就变得水到渠成不可缺少。通过对流浪......
  • HttpClient在SpringBoot中的使用
    一、简介HttpClient是ApacheJakartaCommon下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包。HttpClient是一个HTTP通信库、一个工具包,它只提供一个通用浏览器应用程序所期望的功能子集,与浏览器相比是没有界面的。二、引入依赖<!--httpcli......