- 博客(32)
- 收藏
- 关注
原创 ThingsBoard源码阅读 - 基于antisamy自定义validation注解实现防止xss攻击
ThingsBoard源码阅读 - 基于antisamy自定义validation注解实现防止xss攻击
2024-09-23 18:36:41
704
1
原创 基于springboot使用apache httpClient实现简单的http/https请求代理
基于springboot使用apache httpClient实现简单的http/https请求代理
2024-06-18 11:50:48
519
转载 Mysql Waiting for table metadata lock问题处理
如果你的mysql还是5.6,那么只能按照先方法一来处理。如果你的mysql是5.7版本,可以先执行select * from performance_schema.setup_instruments WHERE NAME = ‘wait/lock/metadata/sql/mdl’;来查看是不是开启了metadata_locks表的特性,如果开启了可以直接使用方法二来处理。那如果是mysql8了,那么恭喜你,可以直接使用方法二来处理,简单快捷。
2023-10-07 10:54:55
381
转载 springboot @Value取yml中指定格式日期自动转Date或LocalDateTime
springboot @Value取yml中指定格式日期自动转Date或LocalDateTime
2022-11-01 14:26:56
1640
转载 总结错误 No mapping for GET /swagger-ui.html
不单单swagger,同样的问题,如果因为继承WebMvcConfigurationSupport导致其他默认配置失效。经过分析发现由于项目中有配置注解类(@Configuration)继承了WebMvcConfigurationSupport,导致默认的Swagger静态资源被覆盖,而缺失了配置。
2022-10-27 13:25:15
1377
转载 springboot整合webSocket
WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
2022-10-21 11:46:10
219
转载 解决mybatis in语句不能大于1000的问题
Java开发中会出现一种情况,就是使用mybatis 的in语句的时候,in语句里面的数组大小不能大于1000.
2022-10-18 18:11:08
665
转载 vue加载优化策略有哪些
vue加载优化策略:1、路由懒加载;2、组件按需加载;3、使用CDN加速策略;4、使用【compression-webpack-plugin】将文件打包成gzip格式。
2022-10-09 11:43:30
1221
转载 支持多域名的多业务系统统一用户中心实现
当你的公司有很多业务线同时在运营,每条业务线有自己的域名和用户中心,这个时候就有一个显而易见的弊端出现了:一是数据大量,本是同一个用户,却在多个产品系统中创建和存储,不利于统一管理;另一方面,用户也需要注册多个账号,不利于从一个产品引导到使用其他产品。基于以上问题,就需要一个统一管理的用户中心。统一用户中心,首先支持各业务系统有不同的域名,其次需要提供统一的登陆逻辑(业务系统不需要实现登陆逻辑)以及支持各业务系统自行提供登陆逻辑(为了保持业务系统风格统一)。
2022-09-15 11:51:42
1000
转载 mysql高版本(5.7以及 5.7以上的版本)sql_mode = only_full_group_by的解决办法
这个错误一般发生在中,其原因是mysql的默认配置中,sql_mode=“ONLY_FULL_GROUP_BY” 这个配置严格执行了 ‘SQL92标准’,所以很高网站维护人员在升级mysql版本时,都会修改 sql_mode 的配置,使其能兼容。
2022-09-15 09:49:01
233
转载 shell脚本语言(超全超详细)
shell 是一种脚本语言脚本:本质是一个文件,文件里面存放的是 特定格式的指令,系统可以使用脚本解析器 翻译或解析 指令 并执行(它不需要编译)shell 既是应用程序 又是一种脚本语言(应用程序 解析 脚本语言)shell命令解析器:系统提供 shell命令解析器: sh ash bash查看自己linux系统的默认解析:echo $SHELLshell脚本是一种脚本语言,我们只需使用任意文本编辑器,按照语法编写相应程序,增加可执行权限,即可在安装shell命令解释器的环境下执行#!
2022-09-13 17:23:15
3268
转载 npm install 遇到问题:ERR! request to https://registry.npmjs.org/express failed, reason: getaddrinfo
ERR! request to https://registry.npmjs.org/express failed
2022-09-09 18:22:49
5267
转载 nginx中localion后路径带或不带/的匹配规则
之前对nginx中localion的匹配规则并没有太多的重视,直到后面上线某个项目时,配置localion中url匹配规则一直报错,才专门又总结了一下localion后面‘/’的截取规则。‘/’的匹配大概分为两类,proxy_pass带地址目录和不带地址目录,简单来说就是看proxy_pass的ip:port后还有没有东西。,按照“代理地址+访问URL目录部分去除location匹配目录”的规则,重新进行拼接后转发。这种情况比较容易理解。
2022-09-09 18:18:01
1714
转载 【笔记】【踩坑】Docker + Nginx + Vue部署前端项目和跨域CORS解决
由于项目使用的前后端分离结构,采用nginx作为服务器代理前端解决跨域问题。阅读本文之前,需要有了解过内容。文章之前,有必要介绍一下CORS:跨域资源共享(Cross-origin resource sharing)什么叫同源,必须同时满足协议相同域名相同端口相同最开始前端打包的时候,BASE_URL='http://172.18.3.50’后端地址,这样并不能解决跨域,查看console一直出现跨域错误;
2022-09-09 17:29:15
2257
转载 报错解决:No-bean-named-springSecurityFilterChain-available
在spring项目中加入Spring Security后,运行报错
2022-09-01 18:05:17
588
原创 Mysql案例 - 变量使用
一张表是记录停车位的预约记录,另一张表记录的是续费记录(即超过预约时长,还需要使用车位,此时用户可以选择续费),两张表的关系是一对多的关系,预约记录中有记录。这里我选择第二种,因为这个查询只会对单条预约记录产生的续费记录进行查询,数据量不会很大,直接在sql中计算还可以偷点懒。1、在续费记录中新增两个字段,在新增和查询时对这两个字段操作,旧数据则以脚本的形式补全。如何判断续费记录的顺序,之前说过记录是自增主键,所以id小的肯定是第一条记录。,就是第一条续费记录的续费到期时间,同时也是。
2022-08-19 17:58:27
294
转载 以16进制的形式查看java class二进制文件
od 将当前文本转化为16进制格式。命令,将二进制信息转换为16进制数据,使用方式为。就是以16进制显示class文件了,内容如下。xxd -c 12 每行显示12个字节。xxd -r 将当前文本转化回文本格式。生成的HelloWorld.txt与通过。od -d 文件 十进制输出。xxd 文件 输出十六进制。也可以使用Linux下的。linux下查看二进制文件。-x 文件 十六进制输出。-o 文件 八进制输出。打开文件 ,然后输入。od [选项] 文件。...
2022-08-11 15:24:02
619
转载 @Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig详解
本文主要是为了个人练习spring的缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】,以及总结个人在使用过程中发现的疑惑点,以及如何解决等思路,另外该文章不会写的特别繁琐、复杂,如果具体想查看某个注解的详细使用方式请单个注解去优快云查询即可,我这边只是为了个人总结,言简意赅那种。在 @Cacheable 注解的使用中,共有 9 个属性供我们来使用,这 9 个属性分别是:接下来我们就分别来介绍一下它的使用。......
2022-08-08 14:11:07
4250
1
转载 MySQL实现分组排序
2. 给每条数据分配序号(类似于row_number())场景描述:如下表,需从每个分组中找到分数排名前二的用户。得到的结果如上图,显然,还需移除掉用户一和用户四。结果如上图(主要看ROWNUM字段)3. 接下来就是简单的取数了。...
2022-08-08 10:08:33
3349
转载 CentOS7 忘记 root 密码的处理方法
至此,密码修改成功,完成最后一步 exit 后会等待时间长一点,然后便会进入启动页面,输入 root 用户的密码后可以成功登陆了。按 e 键,进入初始化脚本编辑页面(进入 Linux 内核模式进行编辑)。touch 该行是让 SELinux 生效, 如果不执行,修改的密码是不会生效的。CentOS7----Linux Root 忘记,进入救援模式更改密码有两种方法!1.Linux 系统开机进入引导画面,在启动 grub 菜单,选择编辑选项启动。让 SELinux 生效,如果不执行,修改的密码是不会生效的。.
2022-08-05 16:08:33
7633
1
原创 .gitignore文件未生效
在项目初始化时,没有加入.gitignore文件。而在要提交代码时,发现很多不需要提交的文件,每次提交时都需要勾选,就非常的麻烦。于是乎就加上了.gitignore文件,并配置了需要忽略的文件,结果发现已经配置忽略的文件还是在提交选项中。...
2022-08-05 16:01:19
128
转载 Springboot--WebMvcConfigurationSupport详解
WebMvcConfigurationSupport是webmvc的配置类,如果在springboot项目中,有配置类继承了WebMvcConfigurationSupport,那么webmvc的自动配置类WebMvcAutoConfiguration就会失效。该注解表示只有当spring的容器中没有装载继承了WebMvcConfigurationSupport类型的bean时,自动配置类才会生效。**使用WebMvcConfigurationSupport配置webmvc的一些方法**......
2022-08-01 18:38:56
4194
原创 Spring获取上下文的四种方式方式
1.创建一个SpringContextHolder对象用来保存ApplicationContext对象。2.在启动类中注册ApplicationContextInitializer接口的匿名对象。
2022-07-29 15:48:26
6510
1
转载 idea之热部署插件jrebel的使用
一个javaweb项目,在写的过程中我们需要不断调试,如果没有热部署,则我们每修改一次项目要重启一次,验证问题有没有得到解决。如果项目很小,启动只要几秒或十几秒,可能感觉影响不是很大;但当项目变大了,重启一次需要几十秒,几分钟,甚至十几分钟,每次修改后都需要重启无疑会严重影响我们的工作效率。......
2022-07-29 11:37:02
667
转载 SpringBoot2整合redis三种序列化方式(Jdk,Jackson,FastJson)
转载自https//blog.youkuaiyun.com/u014212540/article/details/118611381。
2022-07-29 11:24:23
867
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人