项目小结二()
一.个人信息的界面

这里可以进行用户信息的修改,并渲染数据上去
二.这两天,出现的问题:
1.mybatis中 字段取别名 (还没验证,是否正确)
问题描述:由于实体类中的变量名,与数据库中的字段名不相同,导致mybatis框架执行错误。

2.在前端js代码出现问题
问题描述:因为方式如果不是异步的,就会出现问题,这个原理还不是很了解

这里的异步函数,如果不使用这个异步就会出现问题
3.在样式方面

有时候这个样式 active不同成功加上去,目前也还没发现哪里出现了问题。后面有时间再回来解决。
三. 后端过滤器(检测token是否过期)
package com.csdn.controller;import com.csdn.util.TokenUtil;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;// 过滤器,过滤掉accessToke过期的
@WebFilter("/token/*")
public class AuthFilter implements Filter {private static final List<String> WHITE_LIST_URLS = Arrays.asList(// 可以根据需要添加更多URL);@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;httpResponse.setContentType("application/json;charset=utf-8");httpRequest.setCharacterEncoding("utf-8");String accessToken = httpRequest.getHeader("Authorization");String requestURI = httpRequest.getRequestURI();if (WHITE_LIST_URLS.contains(requestURI)) {// 如果在白名单中,则不进行Token验证,直接放行filterChain.doFilter(servletRequest, servletResponse);return;}if (accessToken != null && accessToken.startsWith("Bearer ")) {accessToken = accessToken.substring(7); // 提取Token值try {// 验证Tokenif (TokenUtil.verifyToken(accessToken)) {// Token验证通过,继续执行System.out.println("\n\nToken验证通过,继续执行\n|||||||||||||||||||||||||||||||\n");filterChain.doFilter(servletRequest, servletResponse);} else {// Token验证失败,返回401httpResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED);httpResponse.getWriter().write("Unauthorized");}} catch (Exception e) {// Token验证异常处理e.printStackTrace();httpResponse.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);httpResponse.getWriter().write("Internal Server Error");}} else {// 如果没有Token或者格式不正确,返回401httpResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED);httpResponse.getWriter().write("没有被允许访问!");}}
}
相关文章:
项目小结二()
一.个人信息的界面 这里可以进行用户信息的修改,并渲染数据上去 二.这两天,出现的问题: 1.mybatis中 字段取别名 (还没验证,是否正确) 问题描述:由于实体类中的变量名,与数据库中…...
《论层次架构及其在软件系统中的应用》写作框架,软考高级系统架构设计师
论文真题 层次架构作为软件系统设计的一种基本模式,对于实现系统的模块化、可维护性和可扩展性具有至关重要的作用。在软件系统的构建过程中,采用层次架构不仅可以使系统结构更加清晰,还有助于提高开发效率和质量。因此,对层次架构的理解和应用是软件工程师必备的技能之一…...
校篮球联赛系统小程序的设计
管理员账户功能包括:系统首页,个人中心,管理员管理,公告管理,基础数据管理,球队管理,球员管理,赛事信息管理,用户管理,轮播图信息 微信端账号功能包括&#…...
在 HKCR 新增项和值
HKEY_CLASSES_ROOT HKEY_CURRENT_USER\Software\Classes ∪ HKEY_LOCAL_MACHINE\Software\Classes ; 1. Win11 HKCR 根键默认是 System 所有, Win10 HKCR 根键默认是 Administrators 所有。 ; 2. 以 System、管理员 还是 普通用户 登录系统? ; 在注册表里&#x…...
Spring Boot 注解探秘:JSON 处理的魔法世界
在 Spring Boot 应用开发中,高效处理 JSON 数据同样至关重要。Spring Boot 不仅在 Bean 管理方面表现出色,提供强大的注解系统以助力开发者轻松管理 Bean 的生命周期和依赖注入,在 JSON 数据处理上也毫不逊色。本文将深入探讨 Spring Boot 中…...
利用AI驱动智能BI数据可视化-深度评测Amazon Quicksight(一)
项目简介 随着生成式人工智能的兴起,传统的 BI 报表功能已经无法满足用户对于自动化和智能化的需求,今天我们将介绍亚马逊云科技平台上的AI驱动数据可视化神器 – Quicksight,利用生成式AI的能力来加速业务决策,从而提高业务生产…...
Linux常见指令、ls、pwd、cd、touch、mkdir、rmdir、rm等的介绍
文章目录 前言一、ls二、pwd三、cd四、touch五、 mkdir六、rmdir七、rm总结 前言 Linux常见指令、ls、pwd、cd、touch、mkdir、rmdir、rm等的介绍 一、ls 列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息 -a 列出目录下的所有文件,…...
【Kubernetes】常见面试题汇总(八)
目录 22.简述 Kubernetes 中 Pod 的健康检查方式? 23.简述 Kubernetes Pod 的 LivenessProbe 探针的常见方式? 24.简述 Kubernetes Pod 的常见调度方式? 22.简述 Kubernetes 中 Pod 的健康检查方式? 对 Pod 的健康检查可以通过…...
CentOS 7系统双网卡配置动态链路聚合(bond4)
一、应用场景 在机房建设时,服务器的网卡需要配置成bond4,可以使用我下面的配置文件和脚本来进行配置,简化配置流程。 bond4,即动态链路聚合,它可以将服务器上的两个物理网卡聚合为一个,两个网口逻辑成一…...
ubuntu 20.04 一直卡在登录界面,即使密码正确也无法登录(失败记录)
ubuntu 20.04 一直卡在登录界面,即使密码正确也无法登录 这次是装实体机,一次失败的尝试。。。 名称型号CPUIntel Xeon E5-2673 V3GPURTX 3060 mobile 安装的时候不要选install third-party software for graphics and Wi-fi hardware and additional …...
【深度学习】神经网络-怎么理解DNN、CNN、RNN?
怎么分清DNN、RNN、CNN? 最“大”的概念是人工神经网络(Artificial Neural Network, ANN),它是较为广泛的术语,通常指的是一类模拟生物神经网络的数学模型,其中包括神经元、权重和连接。在这个术语下&#…...
组织应在其网络安全策略中考虑MLSecOps吗?
随着越来越多的组织拥抱人工智能 (AI) 和机器学习 (ML) 来优化操作并获得竞争优势,关于如何最好地保障这一强大技术的安全性的问题也日益受到关注。其中的核心是用于训练ML模型的数据,这对模型的行为和性能有着根本影响。因此,组织需要密切关…...
Windows安装HeidiSQL教程(图文)
一、软件简介 HeidiSQL是一款开源的数据库管理工具,主要用于管理MySQL、MariaDB、SQL Server、PostgreSQL和SQLite等数据库系统。它提供了直观的用户界面,使用户可以轻松地连接到数据库服务器、执行SQL查询、浏览和编辑数据、管理数据库结构等操作。 跨…...
存储课程学习笔记5_iouring的练习(io_uring,rust_echo_bench,fio)
我们知道,在处理大量高并发网络时,一般考虑并发,以及设计对应的方案(比如select,poll,epoll)等。 那么如果频繁进行文件或者磁盘的操作,如何考虑性能和并发,这里就可以考虑用到io_uring。 0&a…...
前端HTML+CSS+JS的入门学习
一.HTML HTML(HyperText Markup Language)即超文本标记语言,是用于创建网页和网页应用程序的标准标记语言。它不是一种编程语言,而是一种标记语言,通过一系列的元素(elements)来告诉浏览器如何…...
通信电路和信道的区别与联系
通信电路和信道的区别 区分通信电路和信道主要在于理解它们的功能范围与作用机制。通信电路侧重于信息的处理和信号的调整,而信道更侧重于信号的实际传输。电路可以视为信道的接入点,但它们的设计和优化考量各不相同。例如,电路设计重视的传…...
基于深度学习的蛋白质结构预测
基于深度学习的蛋白质结构预测是利用深度学习模型来预测蛋白质的三维结构,这在生物学和药物研发领域具有重要意义。蛋白质的功能在很大程度上取决于其三维结构,准确预测蛋白质结构可以帮助科学家理解蛋白质的功能和相互作用,并加速药物发现的…...
基于 Redis 的分布式锁实现原理及步骤
实现分布式锁的目的是在分布式系统中,保证多个节点之间对共享资源的并发访问是互斥的。常用的分布式锁实现方式有以下几种:基于数据库、基于 Redis、基于 Zookeeper。下面详细介绍基于 Redis 的分布式锁实现原理及步骤。 一、Redis 分布式锁原理 唯一性…...
21_动态规划与数据结构结合
菜鸟:老鸟,我最近在处理一个数据操作时遇到了性能问题。我需要计算一个数组中某些子数组的和,但直接计算太慢了,有没有什么更高效的方法? 老鸟:你提到的这个问题其实可以通过动态规划结合数据结构来解决。…...
React与Vue的对比
异同总结 相同点: 都有组件化思想 都支持服务器端渲染 都有Virtual DOM(虚拟dom) 数据驱动视图 都有支持native的方案:Vue的weex、React的React native 都有自己的构建工具:Vue的vue-cli、React的Create React A…...
如何快速上手Excel-DNA:构建专业Excel插件的完整实战指南
如何快速上手Excel-DNA:构建专业Excel插件的完整实战指南 【免费下载链接】ExcelDna Excel-DNA - Free and easy .NET for Excel. This repository contains the core Excel-DNA library. 项目地址: https://gitcode.com/gh_mirrors/ex/ExcelDna Excel-DNA是…...
OpenSpec+Qoder 规范AI编程助手
OpenSpec 是 Fission AI 团队开源、面向 AI 编程助手的「规范驱动开发」轻量级框架与 CLI 工具,核心是 Spec First, Code Later(先定规范、再写代码),解决 AI 编程需求跑偏、上下文丢失、结果不可控的问题。 现根据下面的官网安装…...
Unity原生依赖管理:EDM4U原理、避坑与CI/CD工程化实践
1. 为什么Unity项目越来越离不开EDM4U:从“手动拖拽”到“依赖即代码”的真实痛感我第一次在2019年接手一个中型AR项目时,团队还在用最原始的方式管理第三方库:把.dll、.asmdef、Plugins/Android目录下的.aar文件,甚至Unity Packa…...
3步解锁QQ音乐格式限制:qmcflac2mp3让你的音乐随处可听
3步解锁QQ音乐格式限制:qmcflac2mp3让你的音乐随处可听 【免费下载链接】qmcflac2mp3 直接将qmcflac文件转换成mp3文件,突破QQ音乐的格式限制 项目地址: https://gitcode.com/gh_mirrors/qm/qmcflac2mp3 你是否曾经遇到过这样的烦恼:从…...
王晓玲越“激进”,长安马自达越尴尬:油改电没份,新能源没量
【文/深度评车&财经三剑客】当长安马自达执行副总裁王晓玲喊出"马自达电动化转型,合资中最激进"时,市场的反应却是一阵沉默——因为这句话,怎么听都像是一种自我安慰。 王晓玲的底气有二:一是长安马自达坚持不做油改…...
45k Star 的 AI 编程神器:Claude Code / Codex / Cursor Token 一律打 2 折
👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事中…...
Navicat Mac终极重置指南:3种简单方法快速恢复试用期
Navicat Mac终极重置指南:3种简单方法快速恢复试用期 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 你是否正在使…...
为什么说Ohook重新定义了Office激活的技术边界?
为什么说Ohook重新定义了Office激活的技术边界? 【免费下载链接】ohook An universal Office "activation" hook with main focus of enabling full functionality of subscription editions 项目地址: https://gitcode.com/gh_mirrors/oh/ohook 当…...
论文被吐槽逻辑乱?,有哪些真正值得入手的的AI智能降重工具推荐?
毕业论文降AIGC率,优先选语义重构 学术优化 去AI痕迹的工具,免费与付费结合更高效。下面按中文、英文、免费/付费分类推荐,附实测效果与适用场景。 一、中文论文降重工具(最常用) 1. 千笔AI(综合全能首选…...
UE5 VSCode头文件跳转失效的根因与解决方案
1. 这不是VSCode配置问题,是UE5工程结构和编译系统在“悄悄改规则” 你有没有试过:在VSCode里打开一个刚生成的UE5 C项目,CtrlClick某个UObject子类,光标纹丝不动?或者输入 UStaticMesh:: 后,智能提示里…...
