【瑞吉外卖】-day01

news2024/11/28 6:43:59

目录

前言

第一天项目启动 

获取资料

 创建项目

​编辑

 连接本地数据库

连接数据库

修改用户名和密码

​编辑创建表 

 创建启动类来进行测试

 导入前端页面

创建项目所需目录

检查登录功能

登录界面

登录成功

登录失败

代码

退出功能

易错点


 

前言

尝试一下企业级项目,苍穹外卖自我感觉难度较大,所以犹豫了好久还是选择了瑞吉外卖来作为自己的第一个企业级项目。视频全部参考与黑马程序员,感兴趣的可以和我一起来完成该项目的构建,让我们一天一个脚步来一点点完善这一项目。因为我个人也是第一次写项目,遇到什么问题的话都可以进行讨论。

第一天项目启动 

获取资料

通过百度网盘分享的文件:1 瑞吉外卖项目.rar
链接:https://pan.baidu.com/s/1AKXe8buZjGnRzzwx8iSOaQ?pwd=q1li 
提取码:q1li

这里的资料是我从黑马程序员微官网上面获取的,为了方便大家更好的使用,这里就直接将链接放在这里,方便大家更好的使用。用百度网盘来提取就行。

 创建项目

在这说明一下,我个人使用的idea是2024.1.3的版本,idea的版本并没有任何的限制,创建项目的过程都是相似的。 为了和视频同步所用到的所有版本都是与视频同步的。可以直接复制xml文件,然后用maven进行构建。

 连接本地数据库

连接数据库

因为我已经连接完成在这里就不在测试连接了。

修改用户名和密码

用户名和密码一定要改 

创建表 

法一、直接将资料中的建表语句复制过来,在idea中运行。

法二、注入sql脚本 

 

 创建启动类来进行测试

如果出现项目启动成功则代表配置方面没有什么大的问题,接下来就是开始正式的编写了。

 导入前端页面

这里说明一下,可能和视频中的不太一样,我直接将资料中的两个文件放到了resources/static文件下面了,如图:

这样就可以直接来进行前端页面的访问了,不需要进行多余的配置,相对来说简单一点。

访问的时候在浏览器中直接输入:localhost:8080/backend/index.html

创建项目所需目录

项目的整体结构如图所示

注意!!!

这个地方需要修改一下

爆红是因为你的Service接口没有加入Bean,改成@Resource就好了

检查登录功能

登录界面

登录成功

登录成功之后会直接进入。

登录失败

如果用户名和密码不在数据库中则无法完成登录功能。 

代码

// 员工登录
    @PostMapping("/login")
    public R<Employee> login(HttpServletRequest request, @RequestBody Employee employee){
        // 1.将页面提交的密码password进行md5加密处理
        String password = employee.getPassword();
        password = DigestUtils.md5DigestAsHex(password.getBytes());

        // 2.根据页面提交的用户名username查询数据库
        LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(Employee::getUsername,employee.getUsername());
        Employee emp = employeeService.getOne(queryWrapper);

        // 3.r如果没有查询到返回登录失败的结果
        if(emp == null){
            return R.error("登录失败");
        }

        // 4.密码对比,如果不一致则返回登录失败的结果
        if(!emp.getPassword().equals(password)){
            return R.error("登录失败");
        }

        // 5.查看员工状态,如果已禁用,则返回员工已禁用的结果
        if(emp.getStatus() == 0){
            return R.error("账号已禁用");
        }

        // 6.登录成功,将员工id存入Session并返回登录结果
        request.getSession().setAttribute("employee",emp.getId());
        return R.success(emp);
    }

退出功能

前端页面的右上角有一个退出样式的按钮,单击它可以退出重新进入登录页面。

代码也十分简单。

易错点

数据库的密码,一定一定要用字符串。

在这里卡了好久,如果出现这一错误一定要检查一下自己密码的格式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2227662.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【论文阅读】ESRGAN

学习资料 论文题目&#xff1a;增强型超分辨率生成对抗网络&#xff08;ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks&#xff09;论文地址&#xff1a;[1809.00219] ESRGAN&#xff1a;增强型超分辨率生成对抗网络代码&#xff1a;xinntao / ESRGAN&am…

【HarmonyOS】判断应用是否已安装

【HarmonyOS】判断应用是否已安装 前言 在鸿蒙中判断应用是否已安全&#xff0c;只是通过包名是无法判断应用安装与否。在鸿蒙里新增了一种判断应用安装的工具方法&#xff0c;即&#xff1a;canOpenLink。 使用该工具函数的前提是&#xff0c;本应用配置了查询标签querySch…

Linux内核-tmpfs虚拟文件系统

作者介绍&#xff1a;简历上没有一个精通的运维工程师。希望大家多多关注作者&#xff0c;下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们的Linux进阶部分&#xff0c;到目前为止&#xff0c;已经讲过&#xff1a;硬件&#xff0c;日常运维&#xff0c;基础软…

机器视觉运动控制一体机在DELTA并联机械手视觉上下料应用

市场应用背景 DELTA并联机械手是由三个相同的支链所组成&#xff0c;每个支链包含一个转动关节和一个移动关节&#xff0c;具有结构紧凑、占地面积小、高速高灵活性等特点&#xff0c;可在有限的空间内进行高效的作业&#xff0c;广泛应用于柔性上下料、包装、分拣、装配等需要…

基于SSM+小程序的购物管理系统1

&#x1f449;文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 基于SSM小程序的购物管理系统1&#xff0c;可以实现首页、个人中心、商品分类管理、商品信息管理、特价商品管理、用户管理、留言板管理、系统管理、订单管理等功能。方便用户对首页、商品…

Redis 事务 总结

前言 相关系列 《Redis & 目录》&#xff08;持续更新&#xff09;《Redis & 事务 & 源码》&#xff08;学习过程/多有漏误/仅作参考/不再更新&#xff09;《Redis & 事务 & 总结》&#xff08;学习总结/最新最准/持续更新&#xff09;《Redis & 事务…

正点原子阿尔法ARM开发板-IMX6ULL(十一)——IIC协议和SPI协议--AP3216C环境光传感器和ICM20608六轴传感器

文章目录 一、前言二、 IIC协议2.1 协议解读2.1.1 起始位、停止位、数据传输2.1.2 写时序2.1.3 读时序 2.2 代码分析2.3 AP3216C环境光传感器的代码分析 三、SPI协议3.1 协议解读3.2 代码分析3.3 ICM-20608六轴传感器代码分析 一、前言 看了IIC&#xff0c;我之前毕设用过这个…

Vmware虚拟机解决摄像头无效,相机失效

问题&#xff1a; 使用vmware虚拟机&#xff0c;打开windows的虚拟机&#xff0c;发现找不到摄像头&#xff0c;打开自带的相机软件报错&#xff1a; 解决方法如下&#xff0c;依次点击vmware状态栏的 虚拟机-可移动设备-chicony integrated camera-连接&#xff08;断开与主…

MySQL用户权限管理属于SQL语句中的DCL语句

1.用户授权 语法&#xff1a;grant 权限&#xff0c;权限&#xff0c;on 库名&#xff0c;表名 to 用户名 [identified by 密码] MySQL5的版本&#xff0c;如果这个用户事先不存在&#xff0c;这个grant命令去给用户授权的时候&#xff0c;会将用户一起创建出来&#xff0…

已解决 django.db.utils.OperationalError: (1051, “Unknown table

报错信息&#xff1a; django.db.utils.OperationalError: (1051, "Unknown table bjybolg.tool_submission")python manage.py migrate --fake 命令用于告诉 Django 假装已经应用某个迁移&#xff0c;而不实际执行该迁移的操作。这通常在以下情况下非常有用&#x…

Linux shell编程学习笔记87:blkid命令——获取块设备信息

0 引言 在进行系统安全检测时&#xff0c;我们需要收集块设备的信息&#xff0c;这些可以通过blkid命令来获取。 1 blkid命令的安装 blkid命令是基于libblkid库的命令行工具&#xff0c;可以在大多数Linux发行版中使用。 如果你的Linux系统中没有安装blkid命令&#xff0c;…

堆的应用——堆排序和TOP-K问题

1.堆排序 想法⼀&#xff1a; 基于已有数组建堆、取堆顶元素完成排序。也就是利用写好的堆数据结构&#xff08;之前的文章有讲解&#xff09;&#xff0c;去实现排序。 void HeapSort(int* a, int n){HP hp;for(int i 0; i < n; i){HPPush(&hp,a[i]);}int i 0;whi…

HexForge:一款用于扩展安全汇编和十六进制视图的IDA插件

关于HexForge HexForge是一款用于扩展安全汇编和十六进制视图的IDA插件&#xff0c;在该工具的帮助下&#xff0c;广大研究人员可以方便地直接从 IDA Pro 界面数据解码、解密或执行安全数据审计任务。 功能介绍 1、从 IDA 的反汇编或十六进制视图复制原始十六进制&#xff1b;…

00 DSA-- 入门、实现动态数组、实现链表、栈和队列、环形数组、哈希表

两种代码模式 核心代码模式 核心代码模式&#xff1a;就是给你一个函数框架&#xff0c;你需要实现函数逻辑&#xff0c;这种模式一般称之为。 目前大部分刷题平台和技术面试/笔试场景都是核心代码模式。 比如力扣第一题两数之和&#xff0c;就是给出 twoSum 函数的框架如下…

Jmeter压力测试简单教程(包括服务器状态监控)

前段时间公司需要对服务器进行压力测试&#xff0c;包括登录前的页面和登录后的页面&#xff0c;主要目的是测试负载均衡的实现效果。不知道是不是因为Jmeter不如loadRunner火爆还是什么&#xff0c;网上关于Jmeter的资料有很多但是大多千篇一律&#xff0c;要么简单弄个页面测…

Android 开发 调节声音 SeekBar自定义样式

效果图 xml布局 mipmap/seekbar图片随意一张图都可以&#xff0c;这里我的图就不贴出来了 <SeekBarandroid:id"id/seekBar"android:layout_marginLeft"8dp"android:layout_width"377dp"android:layout_height"8dp"android:layou…

循序渐进丨openGauss / MogDB 数据库内存占用相关SQL

一、内存总体分布 数据库总体内存使用分布 select * from gs_total_memory_detail; 当dynamic_used_memory大于max_dynamic_memory就会报内存不足&#xff1b;如果此时dynamic_used_memory小于max_dynamic_memory&#xff0c;而dynamic_peak_memory大于max_dynamic_memory表…

基于vite和vue3、 eslint、prettier、stylelint、husky规范

前言 在现代的前端开发中&#xff0c;代码规范非常重要。它可以提高团队的协作效率&#xff0c;减少代码错误&#xff0c;使代码更易于维护。为了实现代码规范化&#xff0c;我们可以使用一些工具来辅助我们的开发流程&#xff0c;包括eslint、prettier、stylelint、husky&am…

MYSQL-SQL-03-DQL(Data Query Language,数据查询语言)(单表查询)

DQL&#xff08;数据查询语言&#xff09; DQL英文全称是Data Query Language(数据查询语言)&#xff0c;数据查询语言&#xff0c;用来查询数据库中表的记录。 查询关键字: SELECT 在一个正常的业务系统中&#xff0c;查询操作的频次是要远高于增删改的&#xff0c;当我们去访…

宇音天下最新力作 | VTX356语音识别合成芯片问世

北京宇音天下科技有限公司&#xff0c;依托在语音技术领域的丰富经验和技术积累&#xff0c;成功推出了一款具有里程碑意义的语音识别合成芯片——VTX356。这款芯片的问世&#xff0c;不仅彰显了公司在智能语音处理领域的专业实力&#xff0c;也预示着智能家居、车载电子、智能…