第四章 创建前端项目以及完成登录页面

提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正。


文章目录

  • 第四章 创建前端项目以及完成登录页面
  • 前言
  • 一、创建前端项目
    • 1.新建项目
    • 2.拷贝Layui MINI前端文件
    • 3.新建page包
    • 4.登录页面
    • 5.主页
    • 6.欢迎页面
  • 二、登录请求
    • 1.后端
    • 2.前端
  • 三、跨域问题
    • 1.什么是跨域问题
    • 2.如何解决
  • 四、完成登录页面
    • 1.打开IDEA
    • 2.打开WebStorm

前言

这一章将介绍如何创建前端项目以及完成登录页面
工具:Firefox


一、创建前端项目

1.新建项目


2.拷贝Layui MINI前端文件


3.新建page包

4.登录页面

拷贝login-3作为模板

更改名称


去除验证码,去除【忘记密码】和【保持登录】按钮

去除【版权所有】

去除冗余代码

添加选择用户角色的单行选择框

5.主页

拷贝index作为主页模板

修改文件路径


修改名称

修改login内的登陆成功跳转链接

修改index内的退出登录跳转链接

6.欢迎页面

拷贝welcome-1作为模板,并改名为main

将index中homeInfo的链接改为main

二、登录请求

1.后端

创建LoginController

在UserMapper.xml里为登录功能写一个sql语句

在UserMapper里为登录功能写一个方法

在UserService里也同样新增一个方法

2.前端

引入axios和lay-config

进行登录请求的处理


测试运行,出现跨域问题


三、跨域问题

1.什么是跨域问题

跨域是指跨域名的访问,以下情况都属于跨域:

源URL 请求URL 说明
http://a.com/a http://a.com:8080/b 端口不同
http://a.com/a https://a.com/b 协议不同
http://www.a.com/a http://x.a.com/b 主域名相同,但是子域名不相同
http://a.com/a http://b.com/b 域名不相同

跨域问题是浏览器的一种安全限制,例如一个页面发起的ajax请求,只能是于当前页同域名的路径,这能有效的阻止跨站攻击。

2.如何解决

创建framework包结构

创建MyWebMvcConfigurer

测试,发现前端代码的一个小纰漏


四、完成登录页面

1.打开IDEA

创建Result类

package com.sisyphus.utils;import com.github.pagehelper.PageInfo;import java.util.HashMap;
import java.util.Map;public class Result {           //操作返回的数据public static final Integer SUCCESS_CODE = 200;public static final Integer ERROR_CODE = 500;private Integer code;private String msg;private Object data = null;public static Result ok(Integer status,String msg,Object data){return new Result(status,msg,data);}public static Result ok(String msg,Object data){return new Result(SUCCESS_CODE,msg,data);}public static Result ok(Object data){return new Result(SUCCESS_CODE,"操作成功",data);}public static Result ok(){return new Result(SUCCESS_CODE,"操作成功",null);}public static Result fail(Integer status,String msg){return new Result(status,msg);}public static Result fail(String msg){return new Result(ERROR_CODE,msg);}public static Result fail(){return new Result(ERROR_CODE,"操作失败");}public Result(Integer code, String msg) {this.code = code;this.msg = msg;}public Result(Integer code, String msg, Object data) {this.code = code;this.msg = msg;this.data = data;}public Integer getCode() {return code;}public void setCode(Integer code) {this.code = code;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}
}

禁止返回密码

修改完善LoginController

2.打开WebStorm

完成login页面的登录判断

添加密码错误提示

我们之前在axios.js中暂定设置后端返回的数据为0的时候为正常数据,现在改为200,和后端一致

删除冗余代码

在axios.js中配置全局默认baseURL


登录测试


# 总结 这一章比较操作起来比较繁琐,很容易犯一些小错误,需要一定的独立排错能力。

难点:
1.理解跨域问题
2.学会使用浏览器开发者工具进行基本的调试和排错(推荐使用火狐)

第五章预计三天内更新,涉及JWT原理和应用以及实现功能菜单

【高校宿舍管理系统】第四章 创建前端项目以及完成登录页面相关推荐

  1. 【高校宿舍管理系统】终章 完成主页以及项目总结

    终章 完成主页以及项目总结 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 终章 完成主页以及项目总结 前言 一.完成主页 1. ...

  2. 【高校宿舍管理系统】第九章 寝室编号设置和宿舍初始化以及预选设置

    第九章 寝室编号设置和宿舍初始化以及预选设置 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第九章 寝室编号设置和宿舍初始化以 ...

  3. 【高校宿舍管理系统】第二章 整合Mybatis和写CRUD的基本流程以及使用代码生成器生成Mapper等相关代码

    第二章 整合Mybatis和写CRUD的基本流程以及使用代码生成器生成Mapper等相关代码 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正 ...

  4. 【高校宿舍管理系统】第一章 建立数据库以及项目框架搭建

    第一章 建立数据库以及项目框架搭建 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第一章 建立数据库以及项目框架搭建 前言 一 ...

  5. 【高校宿舍管理系统】第七章 机构管理和功能菜单权限分配

    第七章 机构管理和功能菜单权限分配 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第七章 机构管理和功能菜单权限分配 前言 一 ...

  6. 【高校宿舍管理系统】第三章 Layui整合Axios

    第三章 Layui整合Axios 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第三章 Layui整合Axios 前言 一.下 ...

  7. 【高校宿舍管理系统】第十一章 学生系统

    第十一章 学生系统 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第十一章 学生系统 前言 一.学生登录 二.个人详情 三.在 ...

  8. 【高校宿舍管理系统】第八章 学生管理和楼宇管理以及寝室管理

    第八章 学生管理和楼宇管理以及宿舍管理 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第八章 学生管理和楼宇管理以及宿舍管理 ...

  9. 【毕业设计】大学宿舍管理系统高校宿舍管理系统

    基于Springboot的大学宿舍管理系统&&高校宿舍管理系统 绪论 课题主要内容 系统建设目标 系统采用 B/S 架构,后端基于 Java 语言和 SpringBoot 框架的方式进 ...

最新文章

  1. RGB-D对红外热像仪和毫米波雷达标定
  2. 微信小程序初步入坑指南
  3. WEBLOGIC 内存溢出 解决方案
  4. ctrl shift o失效
  5. JOSSO在JBOSS中安装与配置
  6. Android 各控件的使用 - 按钮(Button)
  7. 2022秋招求职记录(图像 视觉 c++)
  8. python config文件_Python如何配置config文件?
  9. RocketMQ Remoting模块源码功能分析
  10. linux中rar文件包的解压方式
  11. 社交网络分析(igraph)
  12. 简单了解一下电商系统中的SPU、SKU、ID,它们都是什么意思,三者又有什么区别和联系呢?
  13. SPSS读取数据出现中文字符显示乱码的解决方案
  14. linux txt转化vcf命令,【9.2更新】Vcf转换工具(Excel、TXT转Vcf 和 Vcf转Excel)
  15. 怎么注册Github?用手机2分钟完成注册,互联网就是互相连接
  16. HTL/TTL转光纤模块
  17. 【操作系统】成组链接法详解
  18. 根据年份和月份来计算天数
  19. 白话空间统计十九:热点分析(上)
  20. windows设置有线访问内网,无线访问外网

热门文章

  1. html5 video在uc不自动播放,uc浏览器无法播放视频怎么办
  2. 【洛谷】普及练习场 深度优先搜索【易】
  3. 【P1714】切蛋糕(单调队列)
  4. 优达学城数据分析笔记3--------数据分析过程(python篇)
  5. SQL SERVER:开窗函数 SUM() OVER() 数据统计中一例使用
  6. checkbox问题
  7. (111)FPGA面试题-介绍Verilog 块语句fork-join执行过程
  8. linux日志删除1天前,Linux自动删除n天前日志
  9. 翰文付费打印后还有水印吗_免费开通小程序商城?!有支付功能吗?
  10. python socket读取数据不能解析_通过实例解析return运行原理,除了quot;生孩子quot;python真是无所不能啊...