若依Vue(若依前后端分离版)--01

发布时间:2022-11-20 22:00

(该文章整理于网络,仅用于学习记录,如有侵权,请联系删除)

介绍

RuoYi-Vue 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Security、MyBatis、Jwt、Vue),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。比较好用。

 快速了解  

   可参考官网。

环境部署

部署Java:多模块springboot ,通过宝塔创建springboot项目,再通过nginx反向代理即可。

部署Vue :打包部署。

war部署方式
ruoyi/pom.xml中的packaging修改为war,放入tomcat服务器webapps

SpringBoot去除内嵌Tomcat(PS:此步骤不重要,因为不排除也能在容器中部署war

项目介绍

若依Vue(若依前后端分离版)--01_第1张图片

1. 注解:需要通过反射来进行解析,参考excle注解。如果没解析器就没有任何意义。

 若依Vue(若依前后端分离版)--01_第2张图片

 2. ruoyi配置,通过该类读取yml配置文件:(

@Component
@ConfigurationProperties(prefix = "ruoyi")

3. constant常量

4. core: 基本的control 封装公共。

5.公共的实体:如loginbody.

6.封装的page.

7. redis操作的方法。

bbbub{},“aaa”====》

debug讲解

登陆讲解:

获取验证码,获取配置默认的验证码类型。

验证码存放到redis ,并且返回一个uuuid到前台用于验证(有时效),如果要使用,可以临时去取。

若依Vue(若依前后端分离版)--01_第3张图片

登陆逻辑梳理:

  public void validateCaptcha(String username, String code, String uuid)
    {
        String verifyKey = Constants.CAPTCHA_CODE_KEY + uuid;
        String captcha = redisCache.getCacheObject(verifyKey);
        redisCache.deleteObject(verifyKey);
        if (captcha == null)
        {
            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")));
            throw new CaptchaExpireException();
        }
        if (!code.equalsIgnoreCase(captcha))
        {
            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")));
            throw new CaptchaException();
        }
    }

登陆debug:

注意是封装的第三方组件。

模拟登陆若依

      通过API POST 或者 IDEA 的HTTP客户端发起请求,获取图片后 ,解析到答案。

     或者直接根据UUID去redis查询到结果:

  1. 获取验证码,得到UUID

  2. 向后端发送login请求,带上username,password,uuid,code(验证码)
    若依Vue(若依前后端分离版)--01_第4张图片

  3. 登录成功 获取TOKEN token解密后,并缓存到redis.
    若依Vue(若依前后端分离版)--01_第5张图片

     4. 发起其他请求,需要带上token进行认证。(两种均可)
    若依Vue(若依前后端分离版)--01_第6张图片

    若依Vue(若依前后端分离版)--01_第7张图片

后台手册

复习反射注解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。

Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。

内置的注解

Java 定义了一套注解,共有 7 个,3 个在 java.lang 中,剩下 4 个在 java.lang.annotation 中。

作用在代码的注解是

  • @Override - 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。

  • @Deprecated - 标记过时方法。如果使用该方法,会报编译警告。

  • @SuppressWarnings - 指示编译器去忽略注解中声明的警告。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号