![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
项目总结
文章平均质量分 78
项目总结
Liu_Shihao
Null
展开
-
RuoYi-Vue前后端启动流程
RuoYi-Vue前后端启动流程原创 2023-03-13 20:44:19 · 2177 阅读 · 0 评论 -
若依管理系统——自定义注解使用切面记录操作日志
目录一、介绍二、登录日志记录分析2.1 异步定时任务管理器(线程池)2.2 异步工厂(产生任务用)三、用户操作行为记录分析3.1 定义注解3.2 定义切面3.3 使用注解四、源码SQL一、介绍系统访问记录表:操作日志记录表:二、登录日志记录分析2.1 异步定时任务管理器(线程池)无论登录成功还是失败,都会用一个异步的任务AsyncManager.me().execute()来保存登录结果:通过SpringUtils工具类的getBean方法获得定时任务线程池对象,(也可以通过@Auto原创 2021-09-28 11:20:58 · 4298 阅读 · 0 评论 -
MessageSource类的使用(i18n国际化支持)
目录一、简介二、代码实现2.1 messages.properties2.2 yml2.3 MessageUtils获取国际化三、测试四、附录SpringUtils一、简介i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称。通常与i18n相关的还有L10n(“本地化”的简称)。在我们开发WEB项目的时候,项目可能涉及到在国外部署或者应用,也有可能会有国外的用户对项目进行访问,那么在这种项目中, 为客户展现的页面或者操作的信息就需原创 2021-09-22 13:56:51 · 6927 阅读 · 0 评论 -
kaptcha生成验证码、图片通过流的形式响应到前端
一、简介二、代码实现2.1 Pom依赖 <!-- 验证码 --> <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version> <exclusions> <原创 2021-09-15 17:04:57 · 592 阅读 · 0 评论 -
@Validated注解校验参数解释
限制说明@Null限制只能为null@NotNull限制必须不为null@AssertFalse限制必须为false@AssertTrue限制必须为true@DecimalMax(value)限制必须为一个不大于指定值的数字@DecimalMin(value)限制必须为一个不小于指定值的数字@Digits(integer,fraction)限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction@Future限制必须是一个将来的日期@Max(value)限制必须为一原创 2021-08-10 11:58:06 · 2565 阅读 · 0 评论 -
SpringBoot的RestTemplate的各种请求(GET、POST、PUT、DELETE)用法示例
这里写目录标题一、介绍GET 请求getForObjectgetForEntityPOST 请求postForEntitykey/value格式JSON格式postForObjectpostForLocationPUT 请求DELETE 请求exchange 通用方法一、介绍RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 excha原创 2021-08-02 12:47:28 · 3867 阅读 · 0 评论 -
Java将视频文件、图片文件转Base64编码
文章目录一、将视频通过Base64编码转成Txt文本二、从Txt文本中读取Base编码后的视频媒体信息一、将视频通过Base64编码转成Txt文本通过FileUtils.openInputStream()将视频文件转化成输入流。然后通过IOUtils.toByteArray()直接将流经过Base64编码为String。最后通过FileWriter直接将String写入即可。 @Test public void test() throws IOException { Stri原创 2020-12-24 19:01:33 · 3339 阅读 · 1 评论 -
Java项目实现文件上传FTP
目录一、介绍二、pom依赖及配置文件三、Controller控制层接收文件四、Service业务层五、上传测试一、介绍街道一个需求,需要提供一个接口,将资质文件(图片)上传到FTP上,因为之前是前端页面通过Node直接上传到FTP的,现在需要后台提供一个接口由后端接口上传到FTP。二、pom依赖及配置文件项目是否是SpringBoot工程没有关系<!-- ftp上传下载--> <dependency> <groupId&原创 2021-07-21 15:27:06 · 5319 阅读 · 2 评论 -
关于若依管理系统的异步定时任务记录登录日志的分析
目录一、介绍二、流程分析2.1 异步工厂(产生任务用)2.2 异步任务管理器schedule()方法:计划在将来的某个时刻执行任务三、使用方式一、介绍在实际工作中,记录用户的操作行为还是重要的,经常会有客户来问查一下我这个数据是什么时候改的?是谁改的?类似这样的问题。这个时候就需要吧用户所有的操作行为记录下来。可以通过注解+切面实现,也可以通过异步的定时任务来实现。本章来分析一下若依管理系统是怎么通过异步定时任务来实现日志记录的。注解+切面实现日志记录:https://blog.csdn.net/Dr原创 2021-05-29 00:13:47 · 2742 阅读 · 5 评论 -
关于若依管理系统配置多数据源的原理分析
目录一、pom依赖二、yml配置文件三、自定义切换数据源注解四、定义AOP切面切换数据源五、读取Druid连接池配置六、Druid多数据源配置类七、配置动态数据源八、操作数据源类九、数据源类型枚举类总结流程解释:一、pom依赖 <!-- druid连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId>原创 2021-05-20 17:58:39 · 3691 阅读 · 0 评论 -
SpringCloudAlibaba——Nacos注册中心、配置中心的使用
目录一、介绍1.1 什么是注册中心2.1 为什么要使用注册中心二、环境准备三、服务注册3.1 pom依赖3.2 application.yml配置文件3.3 示例一、介绍1.1 什么是注册中心注册中心在微服务项目中扮演着非常重要的角色,是微服务架构中的纽带,类似于通讯录,它记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用。2.1 为什么要使用注册中心注册中心解决了服务发现的问题。在没有注册中心时候,服务间调用需要知道被调方原创 2021-05-14 15:30:56 · 614 阅读 · 2 评论 -
若依管理系统——前后端分离版(二)登陆接口分析及SpringSecurity的登陆认证流程
目录一、登陆流程分析1. 图片验证码接口/captchaImage2.登陆验证接口/login2.1 校验图片验证码2.1 查询用户信息2.3查询用户的权限信息2.4 生成令牌token3.登录二、在请求头中携带token信息请求后台接口1. 获得请求头2.获取请求头中的认证信息3.解析jwt令牌,获取缓存中的用户信息一、登陆流程分析1. 图片验证码接口/captchaImage在登陆之前会有一个请求图片验证码的接口/captchaImage,页面获得图片验证码,后台接口生成一个图片和UUID,并将原创 2021-05-12 15:37:24 · 6664 阅读 · 4 评论 -
若依管理系统——前后端分离版(一)部署前后端并启动运行
目录一、准备二、建表三、修改配置文件一、准备若依官网:http://www.ruoyi.vip/gitee仓库:https://gitee.com/y_project/RuoYi-Vue二、建表三、修改配置文件修改Redis配置信息:修改数据库连接信息:修改日志文件的路径:...原创 2021-05-11 12:48:50 · 7502 阅读 · 5 评论 -
Java获取2021年所有日期和节假日工作日状态
文章目录一、介绍依赖节假日和工作日信息思路二、代码实体类MapperMhaqDateServiceMhaqDateServiceImpl一、介绍依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2原创 2020-12-23 09:19:33 · 2677 阅读 · 1 评论 -
畅购电商项目_Lua、Canal实现广告缓存(四)
lua、Canal实现广告缓存一、介绍二、表结构与缓存结构首页广告表结构设计首页广告缓存结构三、Lua安装Lua简单使用Lua流程控制if语句if..else语句循环while循环函数模块四、Openresty介绍安装openresty五、广告缓存的载入与读取(重点)将MySql数据写入Redis缓存中测试广告缓存读取测试二级缓存-加入openresty本地缓存前端页面实现(了解)六、nginx限流一是控制速率二是控制并发连接数一、介绍Lua语法输出、变量定义、数据类型、流程控制、循环操作、函数、表、模原创 2020-09-24 17:21:07 · 652 阅读 · 0 评论 -
畅购电商项目_商品发布(三)
SPU:某一款商品的公共属性SKU:某款商品的不同参数对应的商品信息新增商品:增加SPU和SKU修改商品:修改SPU和SKU商品审核:修改审核状态上架下架:修改上架下架状态删除商品:修改删除状态(逻辑删除)、真实删除数据(物理删除)找回商品:一定是属于逻辑删除的商品原创 2020-09-21 16:20:07 · 351 阅读 · 0 评论 -
畅购电商项目_FastDFS分布式文件存储(二)
FastDFS是一个开源的轻量级,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。原创 2020-09-19 00:23:33 · 218 阅读 · 0 评论 -
畅购电商项目_框架搭建(一)
框架搭建一、父工程搭建1.搭建父工程模块2.搭建changgou-gateway微服务网关的父工程3.创建changgou-service微服务父工程4.创建changgou-service-api模块父工程5.web模块的父工程二、搭建Eureka模块1.pom文件:2.application.yml文件:3.主启动类三、搭建公共模块1.pom文件四、搭建数据访问工程1.pom文件五、搭建商品微服务模块1.创建changgou-service-goods-api2.创建changgou-service-g原创 2020-09-16 14:28:30 · 507 阅读 · 0 评论 -
使用Java程序逐行读取文件信息
在读取文件内容的时候,一行一行的读取方便我们对内容进行操作。比如固定格式的内容,每一行的第一列都有我们需要的信息需要截取出来。这时就需要逐行读取。使用Java语言对文件内容逐行读取有两种方式:FileInputStream and BufferedReaderprivate static void readFile1(File fin) throws IOException { FileInputStream fis = new FileInputStream(fin); Buffere转载 2020-09-27 19:57:01 · 878 阅读 · 0 评论