栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

报表系统-davinci后台代码学习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

报表系统-davinci后台代码学习

1、使用BeanUtils.copyProperties进行对象之间的属性赋值。

参考资料:​​​​​​使用BeanUtils.copyProperties进行对象之间的属性赋值_Terisadeng的博客-CSDN博客_beanutils.copyproperties

2、使用GuavaCache本地缓存实现登录验证码逻辑,区别于用redis存储验证码。

3、后台接口使用@Valid和BindingResult对RequestBody中实体参数做有效性校验。

4、使用jakarta.mail-1.6.4,jar提供了一个独立于平台和协议的框架来构建邮件,完成邮件接收与发送功能。

5、集成LDAP来管理用户与组织数据。

6、使用JWT校验用户登录信息,区别于session认证。

JWT全称是JSON Web Token是一个开放标准(RFC 7519),目前最流行的跨域身份验证解决方案。

它定义了一种经过加密的格式,放在json对象在请求中传递,用于验证请求是否被允许访问。
WT使用方式

客户端收到服务器返回的 JWT,需要自己存储在 cookie 或者 localStorage中。

此后的每一次请求都必须带上这个 JWT,放在 cookie 中是无法跨域的,所以我们需要在 HTTP 请求的头信息或者参数中带上。

JWT的特点与session的差异

首先要明确,http协议是无状态的,每次请求对服务端而言,是不清楚上一次请求的认证。

session 的做法是将已经认证过的用户信息存储在服务器,用户下次请求带上 Session ID,服务器依此判断用户是否认证过。
因此也带来了一些问题:

开销: 用户信息保存在内存中,认证的用户越多,内存开销越大。扩展性:不方便扩展,虽然可以将session存储在redis中,但是对程序的稳定性又带来不确定CORS:跨资源共享问题,调用从另一个域名下获取资源时,会遇到禁止请求。

与之相反的是 JWT 这种令牌认证方式,基于Token的身份认证是无状态的,服务器或者Session中不会存储任何用户信息,方便无状态的服务扩展,尤其适合做单点登录和手机端的鉴权。
但JWT也有不足,令牌一旦发出,是无法作废的,到期之前一直有效。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/769249.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号