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

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

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



前言

这一章将介绍如何创建前端项目以及完成登录页面
工具: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/ahttp://a.com:8080/b端口不同
http://a.com/ahttps://a.com/b协议不同
http://www.a.com/ahttp://x.a.com/b主域名相同,但是子域名不相同
http://a.com/ahttp://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原理和应用以及实现功能菜单
前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实训学生宿舍管理系统所需要的全部网前端需求,没有包括后端部分。前端学生宿舍管理系统源码,也可作为毕业设计,满足了课程实
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

313YPHU3

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值