首页 > 其他分享 >小白之路之SpringBoot框架

小白之路之SpringBoot框架

时间:2024-06-08 18:33:31浏览次数:13  
标签:这个 里面 SpringBoot 配置 之路 token 认证 小白

在最近学习闲暇时刻突然爆发灵感想要自己写一个通用的SpringBoot项目出来,目前使用了到jwt+redis+mybatisPlus嗯差不多这些吧。

整个项目的目录框架

这个结构差不多也是在网上到处缝缝补补(以致于可能是SpringBoot还是SpringCloud都有一点分不清除了),暂时分为了两个模块

1、common模块(放工具类的地方)

        当中的具体文件也差不多是大多数SpringBoot或者说SpringCloud可能需要用到的
 

        在config里面配置的是SpringSecurity当中的密码加密的方法(之前想着使用md5但是好像又不是安全那种,刚好之前又学习了SpringSecurity就直接把他自带的拿来用),这个时候如何你只想用SpringSecurity当中的加密,不想用认证授权这些还需要再启动类那儿配置一下,关闭认证。

        mp

        这个文件夹里面是配置了一些算是实体类通用的字段以及通用使用的方法(因为这个方法也是从其他项目当中看到的时候感觉很好了然后搬过来的!说错了的话,请批评指出!)

        这个里面也专门配置了那些创建时间、创建人、更新时间、更新人这些字段,然后这些的话也是可以通过这个配置来自动添加这些字段的内容。

        然后如果想要使用这个的话,就需要再对应的实体类上面加上这个注解就可以了(注意加上这个注解之后,再对应的数据表里面也需要加上对应的字段!!!不加的话会报错的)。

返回类Result

        暂时也就还有个比较不足的就是,返回类当中的返回码我感觉可能有点不对(状态码对应的意思不对),各位网友如果有什么更好见解希望提出分享一下。

token

        在这个里面token我也是想做那种在可以进行token的续签,但是在网上学来学去,看来看去,感觉自己都没有看出个什么名堂,就暂时调了个我自己感觉好实现的来实现(如果有什么不对的,希望各位广大网友批评指出!!)

        在用户登录了验证账号密码或者手机号登录成功之后,生成两个token(一个短时间的认证token,一个长时间的刷新token),同时再把这个刷新token放在redis当中,用那个用户自己的id存储起来,一般请求携带认证token就可以了,然后前端那儿看可以弄个定时器还是什么在一定时间后用这个刷新token来请求后端,重新获取到最新的认证token,差不多就是这个思路。

        但是在那个里面我自己也感觉到很多的漏洞,就比如我都给前端发两个token了,一个长时间的一个短时间的,那我为什么不直接发一个长时间的token;在请求获取新的认证token的时候,我现在是直接返回一个认证token的,但是这样的话等到刷新token过期的时候还是要让用户重新登录,那不如弄个长的token(在想是不是要换成在每次刷新认证token的时候也要把刷新token重新返回给前端);在前端做的定时器好像也是不大准确的(好像说是在缩小网页就是点“—”号隐藏了,那个定时器好像就直接不动了)。

        如果各位网友有更好的意见,感谢每一位愿意分享意见的网友,你们的贡献对我至关重要。

2、system(暂时是这个名字)

        这个里面就和一个普通的SpringBoot项目差不多一样了

        config里面就是正常的一些配置类拦截器、mybatisPlus配置、redis配置、Long和时间的序列化配置、异步配置

        暂时写了就是User里面的一些注册、登录等基本接口

        在这儿就有一个非常大的疑惑,就是想config里面的杂七杂八的配置文件,能不能单独弄在一个模块里面,或者说用什么方法可以减少写这个的次数,如果后面有多个模块的话,就比如mybatisPlus配置文件,需要在每个模块当中进行编写,有没有可以把这个进行集中起来了的,如果是在SpringCloud当中使用的也可以。

        如果各位网友有更好的意见,感谢每一位愿意分享意见的网友!!!

标签:这个,里面,SpringBoot,配置,之路,token,认证,小白
From: https://blog.csdn.net/m0_73692901/article/details/139543406

相关文章

  • SpringBoot 快速实现 api 加密!
    在项目中,为了保证数据的安全,我们常常会对传递的数据进行加密。常用的加密算法包括对称加密(AES)和非对称加密(RSA),博主选取码云上最简单的API加密项目进行下面的讲解。https://gitee.com/isuperag/rsa-encrypt-body-spring-boot项目介绍该项目使用RSA加密方式对API接口返回的......
  • SpringBoot热部署设置
    在使用SpringBoot进行开发过程中,我们往往会对代码进行反复修改并对项目进行部署查看效果,这时反复重启SpringBoot会很麻烦,因此使用热部署是提高开发效率的必备插件——“spring-boot-starter-test”<!--SpringBoot热部署依赖--><dependency> <groupId>org.springframew......
  • 【计算机毕业设计】springboot287基于javaEE的校园二手书交易平台的设计与实现
    信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理的内容......
  • 【计算机毕业设计】springboot283图书商城管理系统
    现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本图书商城管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达......
  • 【计算机毕业设计】springboot001基于SpringBoot的在线拍卖系统
    随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单管理、留言板管理、系统管理,用户;首页、个人......
  • 【计算机毕业设计】springboot002基于springboot的医护人员排班系统
    随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了医护人员排班系统的开发全过程。通过分析医护人员排班系统管理的不足,创建了一个计算机管理医护人员排班系统的方案。文章介绍了医护人员排班系统的系统分析部分,包括可行性分析......
  • 【计算机毕业设计】springboot003图书个性化推荐系统的设计与实现
    本论文主要论述了如何使用JAVA语言开发一个图书个性化推荐系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述图书个性化推荐系统的当前背景以及系统开发的目的,后续章节将严格按照软件开发流程,对系统进行各个......
  • SpringBoot高手之路jdk动态代理
    文章目录JDK动态代理基于jdk的动态代理Aop底层就是基于动态代理实现的实现代码先写代理对象工具JDK动态代理基于jdk的动态代理业务需求通过动态代理技术,对service层的方法统计执行时间–创建代理对象Aop底层就是基于动态代理实现的jdk动态代理技术是基于接口......
  • 自媒体蓝海日本整蛊综艺,撸视频号分成计划收益,每天只需一小时,新手小白轻松上手......
    自媒体蓝海日本整蛊综艺,撸视频号分成计划收益,每天只需一小时,新手小白轻松上手......
  • 【C/C++】——小白初步了解——内存管理
    目录1.C/C++内存分布代码区(CodeSegment):数据区(DataSegment):堆区(Heap):栈区(Stack):常量区(ConstantSegment):2.C语言中动态内存管理方式1.malloc(size_tsize):2.calloc(size_tnmemb,size_tsize):3.*realloc(voidptr,size_tsize):4.*free(voidptr):3.C++中动态内......