发布时间: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
)
1. 注解:需要通过反射来进行解析,参考excle注解。如果没解析器就没有任何意义。
2. ruoyi配置,通过该类读取yml配置文件:(
@Component
@ConfigurationProperties(prefix = "ruoyi")
3. constant常量
4. core: 基本的control 封装公共。
5.公共的实体:如loginbody.
6.封装的page.
7. redis操作的方法。
bbbub{},“aaa”====》
debug讲解
获取验证码,获取配置默认的验证码类型。
验证码存放到redis ,并且返回一个uuuid到前台用于验证(有时效),如果要使用,可以临时去取。
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();
}
}
注意是封装的第三方组件。
通过API POST 或者 IDEA 的HTTP客户端发起请求,获取图片后 ,解析到答案。
或者直接根据UUID去redis查询到结果:
Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。
Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。
内置的注解
Java 定义了一套注解,共有 7 个,3 个在 java.lang 中,剩下 4 个在 java.lang.annotation 中。
作用在代码的注解是
@Override - 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。
@Deprecated - 标记过时方法。如果使用该方法,会报编译警告。
@SuppressWarnings - 指示编译器去忽略注解中声明的警告。