【瑞吉外卖】-day01

目录

前言

第一天项目启动 

获取资料

 创建项目

​编辑

 连接本地数据库

连接数据库

修改用户名和密码

​编辑创建表 

 创建启动类来进行测试

 导入前端页面

创建项目所需目录

检查登录功能

登录界面

登录成功

登录失败

代码

退出功能

易错点


 

前言

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

第一天项目启动 

获取资料

通过百度网盘分享的文件: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.mzph.cn/bicheng/58461.shtml

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

相关文章

交叉编译 perl-5.40.0(riscv64)

交叉编译 perl-5.40.0&#xff08;riscv64&#xff09; https://arsv.github.io/perl-cross/usage.html https://github.com/arsv/perl-cross 借助 perl-cross 进行交叉编译 https://www.perl.org/get.html#unix_like 这里获取 perl-5.40.0 的源码 https://github.com/arsv/pe…

时间序列预测(十五)——有关Python项目框架的实例分析

#1024程序员节&#xff5c;征文# 在之前的学习中&#xff0c;已经对时间序列预测的相关内容有了大致的了解。为了进一步加深理解&#xff0c;并能够将所学知识应用于实际中&#xff0c;我决定找一个完整的Python框架来进行深入学习。经过寻找&#xff0c;我终于找到了一篇非常具…

Prometheus+Telegraf实现自定义监控项配置

系列文章目录 运维监控平台搭建 运维监控平台监控标签 golang_Consul代码实现Prometheus监控目标的注册以及动态发现与配置V1版本 Prometheus运维监控平台之监控指标注册到consul脚本开发、自定义监控项采集配置调试(三) golang开发alertmanagerWebhook,实现prometheusalertma…

基于Mysql、JavaScript、PHP、ajax开发的MBTI性格测试网站(前端+后端)

源码地址&#xff1a;https://download.csdn.net/download/2302_79553009/89933699 项目简介 本项目旨在构建一个基于MBTI&#xff08;迈尔斯-布里格斯性格分类指标&#xff09;理论的在线平台——“16Personalities”。该平台利用PHP、MySQL、JavaScript等技术栈开发&#xf…

uniapp的IOS证书申请(测试和正式环境)及UDID配置流程

1.说明 本教程只提供uniapp在ios端的证书文件申请&#xff08;包含正式环境和开发环境&#xff09;、UDID配置说明&#xff0c;请勿用文档中的账号和其他隐私数据进行测试&#xff0c;请勿侵权&#xff01; 2.申请前准备 证书生成网站&#xff1a;苹果应用上传、解析&#x…

202409电子学会青少年机器人技术等级考试(三级)实际操作真题

202409 青少年等级考试机器人实操真题三级 实操试题(共1题&#xff0c;共100分) 1. 主题&#xff1a;亮度可变灯 器件&#xff1a;Atmega328P主控板1块&#xff0c;LED灯模块1个&#xff0c;光敏电阻模块1个及相应辅件。以上模块也可使用分立器件结合面包板搭建。 任务要求&…

【Vispy库】一个用于高性能交互式2D/3D数据可视化库 Python库

Vispy库 1、你好&#xff0c;Vispy&#xff01;2、安装Vispy&#xff0c;轻松上手3、案例一&#xff1a;绘制简单的2D图形4、案例二&#xff1a;3D图形的绘制5、案例三&#xff1a;大规模数据的可视化6、结语 1、你好&#xff0c;Vispy&#xff01; Vispy是一个用于Python的高…

电脑软件下载

开发工具 JDK JDK-23 windowslinuxmac jdk-23_windows-x64_bin.exe jdk-23_linux-x64_bin.tar.gz jdk-23_macos-x64_bin.dmg JDK-21 windowslinuxmac jdk-21_windows-x64_bin.exe jdk-21_linux-x64_bin.tar.gz jdk-21_macos-x64_bin.dmg JDK-17 以下需要登录oracle…

【跨越边界:嵌入式系统在物联网时代的重要性】

摘要 物联网&#xff08;IoT&#xff09;的快速发展正在改变我们的生活方式&#xff0c;而嵌入式系统作为物联网的核心技术之一&#xff0c;其重要性日益凸显。本文将探讨嵌入式系统在物联网中的关键角色&#xff0c;包括其基本概念、应用案例、技术挑战以及未来发展趋势。 1…

【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-8

文件下载与邀请翻译者 学习英特尔开发手册&#xff0c;最好手里这个手册文件。原版是PDF文件。点击下方链接了解下载方法。 讲解下载英特尔开发手册的文章 翻译英特尔开发手册&#xff0c;会是一件耗时费力的工作。如果有愿意和我一起来做这件事的&#xff0c;那么&#xff…

【JavaEE初阶】网络原理—关于TCP协议值滑动窗口与流量控制,进来看看吧!!!

前言 &#x1f31f;&#x1f31f;本期讲解关于TCP协议的重要的机制“连接的建立和断开”~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1…

微信小程序 - 深 / 浅拷贝实现方法,微信小程序深拷贝与浅拷贝,函数方法封装直接调用使用,深拷贝cloneDeep和浅拷贝clone(深复制和浅复制)

前言 在微信小程序中,你无法 直接使用常规浏览器环境中的深浅拷贝方法。 但可以借助 utils.js 实现,下面是方法。 创建深浅拷贝函数 依次打开小程序目录【utils】→【utils.js】,写入深拷贝函数并暴露出去。 // utils.js// 对象深拷贝函数 const deepClone = function(in…

爬虫中Selenium和DrissionPage的区别

运行效率、功能、使用场景 ‌Selenium和DrissionPage在功能、运行效率和适用场景等方面存在显著差异。‌ 功能和运行效率 ‌Selenium‌&#xff1a; ‌功能丰富‌&#xff1a;支持多种编程语言&#xff08;如Python、Java等&#xff09;&#xff0c;与大多数主流浏览器兼容&a…

Docker部署教程:打造流畅的斗地主网页小游戏

Docker部署教程&#xff1a;打造流畅的斗地主网页小游戏 一、项目介绍项目简介项目预览 二、系统要求环境要求环境检查Docker版本检查检查操作系统版本 三、部署斗地主网页小游戏下载镜像创建容器检查容器状态查看容器日志安全设置 四、访问斗地主网页小游戏五、总结 一、项目介…

【Unity】游戏UI中添加粒子特效导致穿层问题的解决

这里介绍一下简易的ui系统中&#xff0c;添加粒子特效导致的穿层问题 首先是在ui界面中添加粒子特效预制体&#xff0c;这个时候&#xff0c;控制这个粒子显示层级的有两个方面 上图中&#xff0c;如果你的Sorting Layer ID的值&#xff08;Layer排序&#xff09;是大于当前C…

以太网交换安全:DHCP Snooping

一、DHCP Snooping的概念及功能 DHCP Snooping是一种用于增强网络中DHCP服务安全性的技术。以下是对以太网交换安全中的DHCP Snooping进行详细的介绍&#xff1a; 基本概述 定义目的&#xff1a;DHCP Snooping是一种网络安全技术&#xff0c;旨在防止未经授权的DHCP服务器在网…

JavaScript中的闭包、递归问题

一、函数定义和调用 1.函数的定义方式 方式一 函数声明方式 function 关键字(命名函数) function fn(){}方式二 函数表达式&#xff08;匿名函数&#xff09; var fn function(){}方式三 new Function() var f new Function(a,b,console.log(a b););//语法 var fn new Fu…

[Linux进程控制]进程创建|进程终止|进程等待

目录 一、进程创建 1.fork函数 2.写实拷贝 二、进程终止 1.进程退出场景 2.进程常见退出方法 &#xff08;1&#xff09;从main函数返回 &#xff08;2&#xff09;_exit &#xff08;3&#xff09;调用exit 三、进程等待 1.进程等待的方法 &#xff08;1&#xff…

12. MapReduce全局计数器

一. 计数器概述 在执行MapReduce程序时&#xff0c;控制台的输出中一般会包含如下内容。 这些输出就是MapReduce的全局计数器的输出信息。计数器是用来记录job的执行进度和状态的&#xff0c;它的作用可以理解为日志&#xff0c;方便用户了解任务的执行状况&#xff0c;辅助…

超好玩又简单-猜数字游戏(有手就行)

云边有个稻草人-CSDN博客 我的个人主页 目录 云边有个稻草人-CSDN博客 前言 猜数字游戏的游戏要求 1. 随机数的生成 1.1 rand 1.2 srand 1.3 time 1.4 设置随机数的范围 2. 猜数字游戏实现 2.1 游戏实现基本思路 2.2 代码实现 Relaxing Time! —————————…