自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 优秀网站收藏——持续更新

前后端优秀有用工具网站收藏记录

2024-04-04 13:31:15 223

原创 简单的Web前端数据字典实现,小型项目必备

dict.js——拿来就用,有些注释,应该一看就懂,看不懂也没关系,因为人生已经很累了,对自己好点。

2023-10-28 14:27:48 593 2

原创 同源多页面实时通信之BroadcastChannel实现及简单封装

BroadcastChannel 接口代理了一个命名频道,可以让指定 origin 下的任意 browsing context 来订阅它。它允许同源的不同浏览器窗口,Tab 页,frame 或者 iframe 下的不同文档之间相互通信。通过触发一个 message 事件,消息可以广播到所有监听了该频道的 BroadcastChannel 对象。简单来说,就是需要在同源的情况下,实现浏览器多窗口实时进行通信,且该通信是广播进行的。

2023-10-14 08:55:53 1377 3

原创 ElementUI tabs标签页样式改造美化

【代码】ElementUI tabs标签页样式改造美化。

2023-07-26 14:04:27 3623 2

原创 纯CSS实现呼吸灯&文字&毛玻璃效果

说一说呼吸灯效果吧,我觉得可以用到,就一个brightness滤镜,用动画动起来。文字效果,在页面中系统名称处可以使用。让页面看起来更有活力一点。闲来无事,下一步在平时中应该考虑如何让页面动起来,增加视觉效果。CSS真是今非昔比了。

2023-05-07 14:41:45 417 1

原创 简单聊聊Echarts伪3D地图实现的相关配置

简单聊聊Echarts伪3D地图实现的相关配置

2023-04-28 16:32:02 2857 3

原创 简单聊聊MySQL临时表(TEMPORARY TABLE)

写了个略,突然想起小时候,课本习题的答案好多都是略,还有的老师让把最后的答案整个撕下来上交,那些当时觉得难熬的日子,如今看来是那般无忧无虑。当学生,除了没钱什么都有,当员工,除了温饱,什么都没有。

2023-04-08 22:26:46 2255 3

原创 SpringBoot项目启动后执行指定方法的四种实现

SpringBoot项目启动后执行指定方法的四种实现

2022-10-10 19:16:58 7829 1

原创 SpringBoot依赖注入Bean到Map

Spring在项目启动初始化Map时,如果Map是显示的声明需要注入,则,Spring会以Bean名称作为key,value中类型Bean实例作为value。将所有Bean容器中符合类型的实例都put到该Map中,返回Map。前提是Map的key是String类型的。...

2022-07-16 16:21:18 2357

原创 【SQL怎么写】查询同一张表中同一个ID对应最新时间的数据记录

同一张表中,怎么查询出同一个ID的最新记录

2022-06-10 09:19:30 3874

原创 Web自动化测试工具:Selenium3+Java详解

今天我们一起来聊一聊Selenium的常用API使用,编程语言选用Java实现,如果使用Python等语言也大同小异。此外,本文在行文时默认同学们都已经具备一定的前端Html、CSS等基础。由于本主题涉及的内容较多,加之笔者也是利用业余时间进行整理,因此不能一蹴而就,当然笔者会坚持更新完。感兴趣的可以Mark一下。文章目录一、环境准备1.Java+IDEA2.Selenium3.浏览器驱动安装4.使用IDEA创建一个测试的Maven工程二、Selenium元素定位1.Selenium提供了8种元素定.

2022-04-04 21:59:38 2186

原创 CSS3实现缺角矩形

CSS3实现缺角矩形前言一、实现的最终效果二、多种实现方式举例1.最low的方式:拿div通过旋转定位盖死一个角2.也很low的方式:使用div对象的before、after伪元素实现3.比较好的方式:渐变实现4.比较好的方式:clip-path实现总结前言很多同学在进行Web页面开发时,总是非常依赖美工的切图,其实有很多简单的样式效果都可以使用CSS3来实现,下面以渲染缺角矩形的实际场景来简单聊聊。一、实现的最终效果很简单、常见的一个小面板集合显示。二、多种实现方式举例1.最low的方式

2022-02-24 20:01:00 3643 2

原创 ElementUI表格中树节点图标替换

关于ElementUI表格中树节点图标替换,以下方式在html+css+js下亲测无误,对于vue脚手架需要样式穿透,使用深度作用选择器进行适当修改即可。// 有子节点 且未展开.el-table .el-icon-arrow-right:before { background: url("../images/folder.png") no-repeat; content: ""; display: block; width: 16px; height: 16px; font-s

2022-02-16 15:25:51 2164

原创 借助CSS3的filter滤镜实现灰色主题模式

国家哀悼日,各大网站会将主题变成灰白色。突然又想起了汶川大地震,悲痛。其实实现的方式很简单,使用css3滤镜中grayscale(%)灰度函数。如何使用如下:<button onclick="javascript:document.body.setAttribute('style','filter: grayscale(100%)')">开启灰色模式</button><button onclick="javascript:document.body.setAttribu

2021-12-10 09:06:13 824

原创 css3实现div的凸起或凹陷效果

简单的小知识div的凸起和凹陷效果之前一直觉得是背景渐变等方式实现,最近突然发现只需要对div的边框进行区别设置即可,感觉非常神奇,于是分享一下。请仔细观察对比示例中四周边框的设置,边框宽度是不一样的。效果在最后示例如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE

2021-11-21 22:57:51 9375

原创 SpringBoot分离打包:将jar包与lib依赖、配置文件分开

文章目录一、前言二、正文1.整个项目的目录结构2.系统环境变量配置3.pom文件配置——本文重点,其它部分甚至不用看4. 打包5.测试,测试依赖于前两篇所构建的测试项目,当然这不重要三、总结一、前言昨天和项目组内一位经验丰富的老师傅探讨,围绕着SpringBoot打包后动不动就一百多兆,在现场远程维护部署时非常不方便的问题,进行了一番请教。问题的根本是:有时候仅仅改动了一点点东西,却要发给现场替换包含所有依赖的jar包,这非常的笨重不方便。于是又学到了新知识。抽空浏览了网上的资料,结合工作中的实际使用

2021-11-07 15:36:22 11657 14

原创 SpringBoot整合Knife4j替代Swagger

文章目录一、前言二、正文1. 基础环境2. 引入依赖一、前言刚刚收到一条评论,让我觉得有些小事应该坚持做下去。SpringBoot前后端分离项目中,一般会借助Swagger生成API文档,相信在日常的开发中,同学们已经应用的比较熟练。但是,在使用过程中,肯定也会发现Swagger中有很多的不方便之处,这些缺点一直饱受诟病,于是在17年,knife4j横空出世。当然一开始它也只是一个swagger的UI皮肤,随着时间的推移,knife4j已经迭代了很多的版本,支持者也不断增加。如果你的项目仍然在使用

2021-11-05 12:40:07 973

原创 SpringBoot整合新版Mybatis-Plus代码生成器

文章目录一、前言二、正文1. pom依赖2. 项目结构3. 重头戏来了,AutoCodeGenerator类4. 演示代码生成5. 最终生成的模块三、总结一、前言题外话:Mybatis-Plus从3.0版本开始,已经支持国产达梦数据库了,那已经是18年的事情了。这篇文章我们来介绍一下,Mybatis-Plus代码生成器,版本是最新版的3.5.1。以下内容仅适用 3.5.1 以上版本,对历史版本的不兼容。二、正文1. pom依赖主要依赖是mybatis-plus代码生成器和freemark模板

2021-11-04 17:06:26 1068 1

原创 SpringBoot借助Hutool简单实现文件目录监听功能

1. 背景借助hutool工具包,实现简单的文件监听,从而实现具体的业务。比如,日报、月报的实时推送等2. hutool依赖hutoo中文文档<!-- hutool工具包 --><dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.12</version>

2021-10-31 15:42:41 1702

原创 Java8 Stream流将List<T>转换为Map<key,T>

一、场景又是一个周五的晚上,开启水贴之路。你是否经常遇到这样的情况,你从数据库中查出某些数据,映射实体类后以List的形式返回,这些数据你想着转换为Map,以待根据key查询使用。我想,这种场景应该是非常常见。二、传统方式这要是搁以前,肯定是声明一个Map<key,value>,对List进行for循环,然后一路put到天亮。比如说下面这种:@Test void listUser() { List<User> users = userMapper.listUser

2021-10-29 22:07:11 835

原创 SpringBoot2自定义注解,以AOP简单日志记录为例

文章目录一、前言二、正文开始1、项目结构:最简单的SpringBoot脚手架搭建的web项目2、自定义注解3.自定义注解切面类4、Controller层5、基本概念简述三、看运行结果,说结论1、正常执行2、产生异常时一、前言好久不见,大家还好吗?最近开始学习若依框架:一个基于SpringBoot的后台管理系统,作为快速开发框架,网上评价不错,有时间的同学可以看看代码学习一下。一开始打算以若依框架中关于Controller层的Log注解作为模板进行自定义注解的介绍,因为在切面类中涉及到了一些基础框架层

2021-10-22 20:49:54 170

原创 SpringBoot整合Mybatis批量插入方式对比

文章目录一、前言二、正文1.准备项目和测试数据表2. 普通for循环,单条插入user表3. foreach,批量插入user表4. ExecutorType.BATCH,批量插入user表5. ExecutorType.BATCH,再结合foreach方式,批量插入user表6. 运行测试,横向对比结果:三、总结一、前言Mybatis批量插入的正确姿势到底是什么?在网上浏览了非常多的帖子,很多都是复制粘贴来的,内容基本都是在误导别人,几乎没有测试验证,如果照做的话,性能反而相对于单条几乎没有任何提升,

2021-09-12 17:50:24 3351 7

原创 div水平垂直居中的几种常用方法

文章目录1.flex布局方式,本人常用2.绝对定位+transform,比较常用3.绝对定位+margin,麻烦,不常用,不推荐4.总结1.flex布局方式,本人常用父div设置:display:flex;justify-content: center;align-items: center;<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta h

2021-09-11 13:16:22 72

原创 SpringBoot RestTemplate绕过HTTPS验证,亲测可用

废话不多说,具体没来得及研究,测试可用,暂时记录一下声明:本系列所有文章皆属于测试案例,在虚构测试环境下进行测试,仅作为案例记录和技术分享。所有代码不涉及到敏感信息,严格遵守公司保密协议。步骤非常简单需要两个类,第一个是util工具类,另一个是restTemplate配置类util类如下package com.ieslab.utils;import org.springframework.http.client.SimpleClientHttpRequestFactory;import j

2021-08-30 15:49:28 1447

原创 谷歌浏览器默认全屏打开指定页面-两种实现方式

背景描述从这篇博文开始,在标题中不再显示的注明开发百宝箱系列,标题太长了哈哈。最近手头上有一个大屏数据可视化的项目,要求是启动浏览器时默认全屏打开大屏可视化界面,简化操作的同时,也更符合常理。因为大屏工作站只为我们项目所用,因此可以直接增加谷歌浏览器的启动参数进行实现。需求点:默认全屏+直接打开项目界面两种方式实现,需要根据需求进行选择...

2021-08-26 12:26:13 11542 3

原创 百宝箱系列之13篇:为SVG图形添加四周发光阴影效果

简单说几句最近在项目中遇到一个锦上添花的需求点,抽象出来就是为SVG中circle元素添加四周的发光阴影效果。百度了很久,都没有比较清晰明确的实现效果,甚至效果图都看不到。实现效果如下图所示:部分内容添加了马赛克,涉及到保密协议如果你的需求如上图所示,可以继续往下看。故事的背景是不能直接改动svg文件,因为文件内容是动态更新的,因此SVG提供的 feOffset 不能使用,而且只能添加半边的阴影效果。思路只能是通过js中对svg进行操作实现。正文开始主要采用了Snap.svg库对svg实现操

2021-08-19 11:16:11 3263

原创 百宝箱系列之12篇:SpringBoot2如何优雅地统一数据返回+参数校验+异常处理

文章目录一、写在前面1. 背景二、正文开始1. demo项目目录结构2. pom文件三、正文开始1. 统一数据返回①:状态码枚举类②:统一数据返回类2. 参数校验①:实体类+参数校验3. 全局异常处理①:自定义异常类②:全局异常处理类4. Controller层:用户增删改查操作5. 测试类①:测试POST方式的保存用户方法,saveUser②:测试DELETE方式的删除用户方法,deleteUser③:测试PUT方式的更新用户方法,updateUser④:测试GET方式的根据用户ID查询用户方法,getU

2021-08-10 16:27:31 565

原创 百宝箱系列之11篇:局域网下,本地能ping通他人机器,他人ping不通自己

问题描述今天遇到了一个问题,在公司局域网下,自己能够ping到同事的IP,同事却ping不到自己,我遇到的这种情况属于:未启用网络发现和文件、打印机共享,在共享设置中开启即可。(最近重装的系统,设置时以为无用直接给禁用了)具体步骤如下:简单记录一下。...

2021-08-09 13:46:57 1191

原创 百宝箱系列之10篇:前端JS数组遍历方式

距离上一次冒泡已经过去了25天了,最近真的很忙,瞎忙。很久没学习了,今天有点时间,聊一聊前端中非常普遍的遍历操作。文章目录一、写在前面二、正文——数组遍历方式1.普通for循环,永远滴神2.forEach函数3.for...in循环——==严格禁止对数组使用for...in,坑太多了==4.for...of循环,==可以使用break哦==5.map函数——不能使用break,return,不推荐6.其实还有很多方式,都可以实现数组遍历,只是强求实现而已,不再提及。三、写在最后四、思考一、写在前面在遥

2021-07-27 21:11:54 114

原创 百宝箱系列之09篇:Vue中如何进行函数消抖

什么是函数抖动问题,不再过多介绍,只说刚刚用到的一个场景:当需要根据内容进行表格数据的过滤时,不能允许每按下一个字符就去过滤一次,尤其是涉及到每次都需要异步调用后台接口时,更是不被允许,所以就有了函数消抖,延迟一定的时间进行查询,如果在延迟倒计时内再次触发,那么重新开始倒计时。话不多说:定义消抖函数: //防抖函数 // 非立即执行版 debounce(func, wait) { let timer; return function () { l

2021-07-02 16:50:56 226

原创 百宝箱系列之08篇:ElementUI表格单元格字体等样式

记录一下:el-table标签中增加 :cell-style="cellStyle"<el-table :data="allData.handleTableData" stripe border :header-cell-style="tableHeaderStyle" height="92.3vh" style="width: 100%" :cell-style="cellStyle"> ````````````````js中增加同名函

2021-07-02 16:32:34 983

原创 SpringBoot2整合WebSocket,实现后端实时推送数据

首先声明,本文只是一个demo,演示WebSocket推送流程,不能简单用于生产,需要改造最近在做的很多项目中,涉及到非常多的实时数据图表展示,采用axios或ajax长轮询的方式,非常的消耗资源。于是有了这一篇,本文主要演示的是WebSocket的API使用,如果要实现服务端主动推送实时数据的功能,需要进行重新设计和编码实现,保证推送的唯一可达性和具备容错机制。本文在“Moshow郑锴”大佬的教程上,进行了一些微小的改动,比如使用JUC的原子类代替了手动加锁来记录在线人数,亦能保证线程安全,又比如lo

2021-06-27 09:12:53 1657

原创 百宝箱系列之06篇:SpringBoot整合Logback日志框架

1. 需要额外引入Logback吗?答案是不需要默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台。spring-boot-starter其中包含了 spring-boot-starter-logging,该依赖内容就是 Spring Boot 默认的日志框架 logback。2. 新建logback-spring.xml在src/main/resources目录下,新建logback-spring.xml,不要自己命名,虽然可以指定logback的配置文件路

2021-06-25 13:14:08 125

原创 SpringBoot2整合Redis(lettuce版)及使用executePipelined(管道)提高性能

文章目录一、前言二、正式开始1.Jedis与Lettuce对比一、前言最近手头的工作需要操作Redis,之前项目中使用Redis都是通过引入Jedis依赖,配置Jedis连接池来操作Redis,这种方式大概从Eclipse满天飞的时候就一直这么用吧?今天换换口味,让我们一起看看Spring Data下面的Redis如何整合到项目中。二、正式开始1.Jedis与Lettuce对比首先,让我们简单看下Jedis和Lettuce的有关内容。都是Redis的客户端,用以连接Redis。区别在于:Jedi

2021-06-24 19:58:36 2832 1

原创 百宝箱系列之04篇:线程暂停中Thread.sleep()与TimeUnit.SECONDS.sleep()

结论就是:以后线程暂停不要在用Thead.Sleep()了,推荐使用TimeUnit.XXX.sleep()。TimeUnit类介绍:TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作。其实,看看源码就知道,其实就是对原来的Thead.sleep()进行了一层封装,底层还是它。/** * Performs a {@link Thread#sleep(long, int) Thread.sleep} using

2021-06-19 09:53:29 313

原创 百宝箱系列之03篇:Maven中dependencies 与 dependencyManagement区别

为什么写这篇博客?其实本来并没有在意,只是有的同学用的还是有些凌乱,就简单聊一聊吧dependencyManagement作用:说白了他其实就是一个对所有依赖jar包进行依赖管理的管理器。实际应用中,可以简单的认为它只应该出现在父工程的POM文件中,用于管理所有子工程的公共依赖版本。重点:它只是声明依赖,但是实际不会引入,因此在子工程中,如果需要此依赖,需要进行显示声明引入,子工程中可以不指定具体版本,如果不指定版本会自下向上一直寻找,直到找到最顶层的dependencyManagement为止

2021-06-18 22:49:49 169

原创 百宝箱系列之02篇:SpringBoot2.x使用Fastjson替换默认Jackson

已经废弃的方法:SpringBoot2.0开始,采用继承WebMvcConfigurerAdapter的方式已经过时,请不要再继续使用。maven导入fastjson的坐标,不再啰嗦。所有maven坐标都可以去这里找到。Maven仓库两种方式:第一种:创建自定义消息转换器配置类,通过@Bean注入替换默认的消息转换器第二种:实现WebMvcConfigurer,重写configureMessageConverters方法第三种:继承WebMvcConfigurationSupport,不再介绍

2021-06-16 16:56:32 589

原创 百宝箱系列之01篇:CSS修改全局滚动条样式

代码如下:/* 滚动条样式修改 */::-webkit-scrollbar { width: 10px; height: 10px;}::-webkit-scrollbar-track { border-radius: 3px; /*滚动条的背景区域的圆角*/ background-color: #fdf8f5; /*滚动条的背景颜色*/}::-webkit-scrollbar-thumb { border-radius: 3px; /*滚动条的圆角*/ backgrou

2021-06-16 16:04:14 112

原创 SpringBoot解决浏览器跨域问题的三种方案

文章目录一、前言(随便聊聊)二、何为跨域?1.概念2.构成跨域的条件三、测试项目和HTML页面(创造跨域条件)准备1.后端2. 前端四、解决跨域问题的三种方案1.方案一:借助注解@CrossOrigin2.方案二:CORS全局配置之实现WebMvcConfigurer3.方案三:CORS全局配置之过滤器(Filter)实现五、后话一、前言(随便聊聊)  晚风中,奔跑在田间小路的那个少年,仿佛就在昨天。  对于Web开发而言,前后端一把梭的时代早已渐行渐远。像我这非科班出身的半吊子程序员,对于JSP仅仅

2021-05-23 16:11:31 542

原创 震惊!Fastjson!JSONObject/JSONArray深浅拷贝踩坑,如何深度复制对象

文章目录一、写在前面二、问题描述三、问题模型抽取四、正文,开始敲代码,首先模拟重现问题五、问题解决的探索过程六、如何解决JSONArray/JSONObject浅拷贝问题(如何获得深拷贝对象)方法一:借助addAll()或者putAll()方法进行深度拷贝方法二:先将源对象转成JSON字符串,再解析成新对象七、写在最后一、写在前面  昨天周五,在开发某个接口时遇到了一个非常坑的问题(当然是因为自己基础不够扎实),没有注意到JSONArray和JSONObject深拷贝与浅拷贝的问题,在坑了呆了一下午才出

2021-05-22 19:46:26 5526 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除