- 博客(29)
- 收藏
- 关注
原创 Flowable实现回退功能(关于ruoyi-vue-pro代码学习)
这个方法用了递归调用,通过我们传过来的当前任务的节点,往前找,找到所有的任务节点,这个方法有三个参数,第一个是我们需要传过来的当前节点,第二个节点是已经连过线的节点,这个参数的意义是当我们递归的时候,已经走过的流程就不需要在走一遍了,避免重复,最后一个参数也就是我们存放数据的参数,我们将最后要返回的结果都存在这个集合里面;这样迭代完之后,我们就获取到了当前任务节点之前的所有节点(用户节点),接下来就得判断这些节点那些不是串行节点,需要将这些节点去掉,就是我们需要的数据;类似非串行、子流程无法退回。
2023-12-04 16:38:56
7225
8
原创 关于芋道源码中的工作流(基于flowable)简单探究(个人学习)
工作流(Workflow)指“业务过程的部分或整体在计算机应用环境下的自动化”,是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。它主要解决的是为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务的问题。工作流概念起源于生产组织和办公自动化领域,是针对日常工作中具有固定程序活动而提出的一个概念,目的是通过将工作分解成定义良好的任务或角色,按照一定的规则和过程来执行这些任务并对其进行监控,达到提高工作效率、更好的控制过程、增强对客户的服务、有效管理业务流程等目的。
2023-11-29 17:10:21
10102
8
原创 使用easyExcel导出多个sheet表,并且每个表导出使用的方法不同
在使用easyexcel时,我先使用一个excel表格作为模板,导出了一张表,另外还有一张明细表,我需要使用动态列来导出(比如每一行数据或者说每次生成的表,它的表头是不固定的,有些有10个,有些有15个),我最终分别使用EasyExcel的withTemplate()方法和.head()方法实现了这两个功能,最终我希望将这两张表导出到同一个excel文件里面的两个sheet,如果使用导出的方法都一样,其实也很简单,到处都可以搜的到,但是我的两张表分别使用了不同的方式来导出,最终经过重重困难,终于解决!
2023-11-21 14:03:28
2041
原创 在springboot中解决RabbitMq的循环依赖问题
明显就是循环依赖问题,然后我就去网上搜,大概就是我自己写的配置类引发的这个问题,不能将这个rabbitTemplate自动注入要我们手动注入,并且@PostConstruct这个注解也导致这个问题。在springboot项目中引入RabbitMq导致报循环依赖错误。去掉@PostConstruct注解就好了。自己注入rabbitTemplate。删除@Resource注解。
2023-08-18 16:16:32
720
原创 项目优化个人总结:关于优化项目以及redis缓存出现的问题解决方案
引入问题:我们在写项目的时候,不仅要实现功能,还要考虑性能的问题,主要是项目发布后,面对高并发的情况,我们的项目是否能正常运行,并且我们的项目不足的点在哪里,怎么优化,我们的代码逻辑,是否保证了我们业务的性能?通过压力测试,我们可以在自己电脑上下载相关的测压软件,然后使用jdk自带的可视化工具,对比业务性能,怎样做才能更好的优化我们的项目;因为我自己的电脑内存不够,我就不测试了;但是通过别人测试,我们发现影响业务性能的点主要在以下几个方面我们的日志输出级别。
2023-07-24 17:16:08
127
原创 springBoot静态资源加载不到,并且配置了也不生效
然后发现也不生效,我就去搜,发现了各种配置的方法,继承这个类的,或者实现那个方法的,网上一搜一大堆,都不行,然后我又试了用配置文件配置,也就是yml,因为用的thymeleaf引擎模板的,所以,也配置了些thymeleaf的配置,能好点,起码能访问到首页的html了,但是依然静态资源加载不到,还有说那个pom文件有那个过滤的,把那个删了就好,我查过那个问题了,我没有那个过滤的。
2023-07-21 20:39:54
1134
原创 nacos做配置中心时启动报错:Application failed to connect to Nacos server: “null“
但是spring-cloud-alibaba在2020.x以后更新,就将这个bootstarp.yml文件给去除了,也就是。我明明配置了nacos的配置文件,并且在使用时也调用了bootstrap.yml,但是依然报错。我们根据新特性,和官方文档的指导,我们可以直接在我们的application.yaml中配置。1、我们依然使用bootstrap.yml配置我们的配置中心:(不建议)毕竟人家都升级了。在SpringCloud2020以后,配置bootstrap.yml都是无效的。以上两个配置文件是等价的;
2023-07-07 17:42:10
4150
原创 redis哨兵一直选举master是挂掉的服务器
直到我挂掉主服务时,从机依然不会发生变化,由于配置了日志,我便查看日志,发现哨兵在投票选举的时候还在选举挂掉的主机6379.。之后又会监控到该主机挂掉了,然后重新选,一直循环。之后发现,我只关闭了主机也就是6379的防火墙,没有关闭两个从机的防火墙导致一直选举失败;当主服务挂掉时,由于我设置了哨兵监控,会将没有挂掉的从机里选举出一个作为主机;当我在学习redis的哨兵的时候,配置哨兵的时候发现了 问题。解决问题:重新选择6381作为主机。之前配置文件的时候一直没有问题。我使用的是一主二从三哨兵模式。
2023-06-08 21:14:38
444
原创 Redis启动出现问题*** FATAL CONFIG FILE ERROR ***Reading the configuration file, at line 393>>> ‘set-pro
当我们在启动redis时候发现这个错误,首先是告诉我们配置文件有问题,我们需要修改配置文件,但是这个是默认的我并没有修改过,怎么会报错呢,我刚开始试着将yes改为no,结果还是一样的错误,经过不停的搜索,我发现,这并不是我们配置文件有错误,只是我们之前装过4.00版本的redis,当我们启动redis的时候,我们发现redis启动的是4.00版本的,而我想启动的是新版本的redis,使用的是新版本的配置文件,导致旧版本的配置文件就没有那个配置。
2023-06-07 16:50:38
3814
原创 SpringBoot配置自定义WebMvcConfigurationSupport时,导致静态资源无法访问到
当我在写SpringBoot项目时,想通过继承WebMvcConfigurationSupport类重写一些配置时,重启项目发现,项目无法正常运行,项目404无法找到,所有页面都无法访问。最后发现是当我们继承这个类时,SpringBoot里面的默认静态资源管理器就失效了,需要我们自己重写,我们重写该方法就可以。也就是重新配置静态资源。
2023-05-19 00:04:10
554
原创 MybatisPlus学习笔记
我们自己自定义的mapper跟之前的mybatis一样,很简单,只需要再resource目录下建包mapper,下的xxx.xml就是我们对应mapper的配置文件,这是mybatis的默认路径,我们也可以自己定义配置文件的位置。剩下的就跟之前mybatis一样了。这里不做演示了。
2023-05-09 09:21:15
322
原创 swagger学习笔记
前后端分离后端时代:前端只用管理静态页面;html—>后端,模板引擎JSP—>后端占了大多工作前后端分离时代:后端:祸端控制层,服务层,数据访问层 【后端团队】前端:前端控制层,视图层 【前端团队】伪造后端数据,json,已经存在了,不需要后端,前端依旧能够跑起来前后端如何交互?—>API前端后端相对独立,松耦合前后端甚至可以部署在不同的服务器上产生一个问题前后端集成联调,前端人员和后端人员不发做到,及时协商,尽早解决,最终导致问题集中爆发;
2023-05-02 15:40:30
647
原创 springBoot学习笔记
javase:OOPmysql:持久化html+css+js+jQuery+框架:视图层,框架需要加深javaweb:独立开发mcv三层架构的网站:原始ssm:框架:简化了我的开发流程,配置较为复杂;war:tomcat运行spring再简化:springboot 微服务架构 打jar包:内嵌tomcat服务越来越多约定大于配置程序=数据结构+算法;程序=面向对象+框架什么是微服务?微服务是一种架构风格,要求我们在开发的时候,这个应用必须构建一系列的小服务组合,可以通过http的方式进行互通;之前的采用的
2023-04-11 19:09:52
267
原创 Maven中资源导入问题
我们在maven中会遇到资源导入的问题,就是项目没问题,但是就是会报错,解决方法如下。在pom.xml中添加如下代码就好了。
2023-02-26 15:40:19
179
1
原创 Spring学习笔记
AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生泛型,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
2023-02-23 00:00:17
476
原创 Mybatis学习笔记
如何获取Mybatis?Github:https://github.com/mybatis/mybatis-3/releases中文文档:https://mybatis.org/mybatis-3/zh/getting-started.html1.2、持久化数据持久化为什么需要持久化?有一些对象,不能让他丢失内存太贵Dao层,Service层,Contorller层…最重要的一点:使用的人多Spring SpringMVC SpringBoot思路:搭建环境—>导入Myabtis—>编写代码—>
2023-02-13 15:04:59
269
原创 IO框架(学习笔记)
BufferedInputStream(字写缓冲输入流)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x4IMkF12-1675761904790)(C:\Users\昭昭\AppData\Roaming\Typora\typora-user-images\image-20220928172249211.png)]BufferedOutputStream(字写缓冲输出流)
2023-02-07 17:26:27
189
原创 JavaScript学习笔记
javascript是一门世界上流行的脚本语言,它可以理解为是JavaScript的一个标准,但实际上后两者是ECMA-262标准的实现和扩展。1、内部定义2、外部引入代码示例:2.2、基本语法入门2.3、基本数据类型数值,文本,图形,音频,视频变量变量的定义都是用 varvar a = 1;numberjs不区分小数和整数,都用Number字符串‘abc’ “abc”布尔值true false比较运算符js缺陷 不要使用 == 比较 一般用===须知:浮点数问题:尽量避免
2023-02-07 17:25:11
475
原创 MySql笔记(狂神)
javaEE : 企业级Java开发 web前端(页面:展示,数据)后台(连接点:连接数据库JDBC 连接前端(控制,控制视图跳转,和给前端传递数据))数据库(存数据 ,Txt,Excel,word)数据库(DB , DataBase)概念:是一个数据仓库,是安装在操作系统(windows,linux,max…)上的软件,可以存储大量的数据,500万条都可以,使用后面会卡,使用SQL语句操作。作用:存储数据,管理数据关系型数据库:(SQL)行、列非关系型数据库:(NoSQL)NOT Only 不全
2023-02-07 17:23:39
990
原创 狂神javaweb笔记(学习笔记)
在java中,动态web资源开发的奇数童虫为javawebweb应用程序:可以提供浏览器访问的程序;web应用程序编写完毕后,若想提供给外界访问:需要一个服务器来统一管理;页面会动态展示:web展示的效果因人而异:千人千面。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R4niJ8Sv-1675761451041)(javaweb.assets/image-20221105153123616.png)]缺点:优点:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直
2023-02-07 17:22:01
635
原创 javaWeb 中Tomcat 10 jsp文件内置对象不能正常使用的问题(已解决)
在这段时间学习javaweb时,因为是自己找的视频,下载了最新版本的Tomcat,Tomcat 10 ,然后就发现了很多问题,Tomcat 10 跟之前的版本 有很大的区别,以至于,10以下的版本的文件,到10不能正常运行,通过了解和查询,我明白了其中最重要的Servlet包的路径变了,之前都是javax包下的,现在变成了jakarta包,导致变化很多。然后我通过jsp文件生成的java文件看看生成的源码,发现我写的东西连进去都没进去。卧槽,我还以为我的包导错了,但是并不是这个问题。求求了,搞了好几天了。
2022-11-19 17:28:23
1676
原创 CSS学习笔记
语法:代码例子:HTML:css:CSS的优势:1、内容和表现分离2、网页结构统一,可以实现复用3、样式十分丰富4、建议使用独立于HTML的CSS文件5、利用SEO,容易被搜索引擎搜到外部样式的两种写法:导入式:CSS2.1特有的2、选择器 作用:选择页面上某一个或者某一个元素1、标签选择器:选择一类标签 标签{}2、类选择器: 选择 所有class属性一样的的标签,跨标签, .类名{}3、id选择器:全局唯一 #id名{}优先级: id>class>标签1、后代
2022-10-24 10:37:37
94
原创 Java注解与反射笔记
使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口格式@interface用来声明一个注解,格式:public:@ interface 注解名 { 定义内容 }其中每一个方法实际是声明了一个配置参数方法的名称就是参数的名称返回值的类型就是参数类型(返回值只能是基本类型,Class,String,enum(枚举))可以通过default来声明参数的默认值如果只有一个参数成员,一般参数名为:value。
2022-10-09 14:52:13
156
原创 JavaIO框架学习笔记
BufferedInputStream(字写缓冲输入流)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vm3nSZrO-1664946570483)(C:\Users\昭昭\AppData\Roaming\Typora\typora-user-images\image-20220928172249211.png)]BufferedOutputStream(字写缓冲输出流)
2022-10-05 13:11:04
221
原创 增强for循遍历数组输出时容易出现的错误
这里我们可以发现在for循环里有i和a两个变量,按照定义i是变量,a是数组名,但是我们一般操作数组时习惯用a[i]这种方式,容易混淆。而正确的方法是只用输出i就可以,在增强for循环里面的i就是我们给数组里面的元素起的变量名,并不是数组下标!这样就正确了,在初学的时候一定要搞清概念,这对以后有很大的帮助,像我一样的萌新们一定要注意啊!因为刚开始学习,对增强for循环的概念不太清楚,所以在遍历数组的时候总是出现下标越界的错误。这样就会报数组下标越界错误,而且输出的数组不正确(是没有输出1的)
2022-09-16 17:24:34
653
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人