自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

本郡主是喵

分享自己的学习笔记,争取每天都进步一点!

  • 博客(130)
  • 收藏
  • 关注

原创 利用websocket +定时器简易的实现一个网络聊天室

其实原理非常简单,就是客户端吧用户通过websoket来连接websocket服务端。然后服务端,收集每个用户发出的数据, 将每条用户的数据通过广播的形式推送到每个连接到服务端的客户端。从而实现用户的实时聊天。

2024-03-06 11:10:33 613

原创 基于jwt -用户离线检测的实现思路

其实思路很简单。就是,用户与系统交互的token。token的拦截时间 - token的创建时间 = 用户与系统交互的时间差值。只要这个时间差值为负数,就判定为离线。基于此,我们每次与系统交互,都需要重新创建token,从而不断刷新token的创建时间来给下次系统判定来使用。以上做的离线,只是告知前端用户超时需要重新登录,但是并未删除在redis中存储登录用户状态。

2024-03-05 14:16:57 451

原创 将jar包打包为docker镜像

此记录一下将springboot项目的jar打包成docker镜像记录错误点。

2024-03-04 10:24:51 962

原创 通过go自定义一个分页插件

嗯...也不能叫做分页插件,就是一个分页工具类。

2024-02-25 10:59:41 642

原创 go interface{} 和string的转换问题

先通过fmt.Spinft()函数转换为字符串,会多了 [ ]这个东西,再切除就可以了。他就会报interface{} not string这个问题。我试了试,就算用 switch - type,类型匹配不到。问题来源于,我sql模版拼接遇到的问题。首先,这样是没有问题的。

2024-02-24 10:21:57 659

原创 ERC721解读

NFT(非同质化代币):类似于明朝、宋朝的青花瓷。虽然都是青花瓷。但是都具有唯一的典藏价值。而且价值可能不同。NFT就是具有唯一价值的代币。ERC721: 是以太坊规定实现NFT的一种标准了。实现ERC21标准的智能合约就是NFT代币了。

2024-02-22 15:51:00 931

原创 redis + 拦截器 :防止数据重复提交

我们post请求,拦截器要预先读取HtppServletRequest里面的body的数据,是通过io的方式,都知道io读取完毕之后,之前的数据是变为null的,但是,当我么后面的接口来委派的时候,也是通过io读取body。我们要考虑一个事情,就是我们要验证数据的重复提交: 首先第一次提交的数据肯定是要被存储的,当而第二次往后,每次提交数据都会与之前的数据产生比对从而验证数据重复提交,我们要具体判断数据是否重复提交的子类。发现数据是成功存入的,剩余7s过期,在10s之内,也就是数据没过期之前,在发送一次。

2024-01-25 22:12:52 1258

原创 ERC20 解读

ERC-20 提出了一个同质化代币的标准,换句话说,它们具有一种属性,使得每个代币都与另一个代币(在类型和价值上)完全相同。例如,一个 ERC-20 代币就像以太币一样,意味着一个代币会并永远会与其他代币一样。上面是官方的说法, 代币嘛,比如游戏:我们用金钱充值,经过一定换算,人民币对应的换算游戏的货币。这些游戏货币就是代币。如果智能合约实施了下列方法和事件,它可以被称为 ERC-20 代币合约,一旦部署,将负责跟踪。ERC20是以太坊定义的一个合约接口规范,符合该规范的合约被称为以太坊代币。

2024-01-22 22:08:44 551

原创 PageHelper分页插件的使用

本文是java 分页插件的使用

2024-01-21 21:33:58 436

原创 Druid监控 + 多数据源配置

我们定义一个切面类,负责获取我们的自定义数据源注解的值,从而在DynamicDataSource中的setDataSource() 方法,设置当前线程用的数据源。然后被determineCurrentLookupKey()方法获取到,从而切换数据源。注意在我们处理中方法的优先级比类的优先级高。

2024-01-21 09:55:31 1039

原创 mybatis-plus: You have an error in your SQL syntax; check the manual that corresponds to your MySQL

就是sql语句的问题,但问题关键在于,我这是用mybatis-plus,执行的sql,语句不是我能更改的。原来将 name ,desc识别为关键字了,因此执行报错。然后,我们是需要将这些字段转义。搜嘎它居然将java字段 如: userName -> user_name 映射为。在mybati-plus使用的实体类上,加上红框里面的注解即可。在控制台里面,找到执行的SQL语句。我将语句贴在navicat里面执行。然后,我打开数据库中的表来看。

2024-01-08 12:23:05 615

原创 无法解析 org.springframework.boot:spring-boot-starter-test:2.5.15

但问题的根本原因在于父依赖项的索引被idea给缓存起来了。Invalidate Caches/Restart一下就解决了。今天去整合项目依赖,结果tm突然报这个错误。

2024-01-08 09:13:07 567

原创 后台管理系统 -- 点击导航栏菜单对应的面包屑和标签(Tag)的动态编辑功能

相信很多时候,面包屑和标签(Tag)的功能几乎是后台管理系统标配。就是会随着路由的跳转来进行相应的动态更新。

2024-01-02 22:21:07 607

原创 web功能实例 - Canvas裁剪工具

嗯,手撸官方文档2天,发现没啥用,尤其是动画,那种计算出来的,根本想不到。因此学着学了抱着要做个东西的想法,去网上找相关案例,最终做出了这个裁剪工具。针对部分核心功能进行思路讲解。

2023-12-25 20:52:08 979

原创 功能案例 -- 通过开关,白天模式、夜晚模式切换

以上的过渡效果,我嫌麻烦,用js加的,但是一旦选择器过多了,执行速率变慢,。,所以还是采用css样式加。

2023-11-12 12:15:06 225

原创 功能: 在web应用程序中、读取文件

通过使用文件 API,web 内容可以要求用户选择本地文件,然后读取这些文件的内容。这种选择可以通过使用 HTML元素或通过拖放来完成。你可以隐藏公认难看的文件元素并显示你自己的界面来打开文件选择器,然后显示哪个或哪些文件被用户选中了。你可以通过给 input 元素添加的样式,再调用元素的方法来实现。

2023-11-08 22:08:32 250

原创 功能案例 -- 拖拽上传文件,生成缩略图

【代码】拖拽上传文件。

2023-11-08 20:59:05 595

原创 关于利用webase-front节点控制台一键导出的java项目解析

搭建区块链系统和管理平台分别用的的。关于我们在利用java开发与区块链系统交互:我们在搭建好fisco链之后,在搭一个webase-front服务,我们就能通过front服务提供的api,间接在fisco上面,进行部署、调用合约、获取块高,等与区块链系统交互的行为。webase-front接口说明:2.通过引入他调用相关的方法,与区块链系统交互。

2023-10-20 08:33:41 748

转载 Ubantu实现root账户登录

root quiet_success不允许root身份登陆这行注释掉。太长了,因此整理个简洁版,方便自己修改。

2023-10-17 19:35:52 166

原创 【已解决】No Python at ‘D:\Python\python.exe‘

但是,并没有解决,至于为什么?上面,这个博客就是利用移动之后的解释器路径,也就是用基础解释器的路径,新建了python环境。但是我爬虫项目的解释器环境,是由没移动之前的python解释器路径,创建出来的虚拟python环境。起因,我把我的python解释器,重新移了个位置,导致我在Pycharm中的爬虫项目启动,启动不了。1.是利用上述方法 ,把我爬虫用到的包,重新 pip以下。将这里之前解释器的目录,改成现在解释器的目录。2. 或者,修改虚拟环境的配置文件。

2023-10-15 09:19:09 963

原创 fisco Java-sdk 快速入门案例

我们用拉取fisco 的控制台里默认带的HelloWorld合约来演示。PS :注意,生成java文件包名要跟你项目里对应的包名要一致。最好在setting.xml 把maven本地仓库也改一下。将节点的sdk证书拷贝到resources目录下面。1. 使用 IDEA 创建一个Maven应用。将该java 文件移动到你的java项目里。2.引入 fisco java sdk。将该配置文件也移动到conf同级目录。4. 将合约生成对应的java 文件。6. 使用测试文件部署和调用智能合约。

2023-10-10 09:09:37 409

原创 selenium京东商城爬取

你看完上述项目内容之后,会发现京东登录是一个比较坑的点,selenium控制浏览器没有登录京东,导致我们自动爬取网页被重定向到京东登录注册页面。因此,我么 要单独能一个登录注册。

2023-10-03 18:37:14 1567

原创 selenium下载安装 -- 使用谷歌驱动碰到的问题

4.win11 运行python selenium程序,浏览器弹出伴随着 设置弹出,要求修改默认浏览器。PS: 这个方法适用在探索过程中,手残跟我一样将谷歌浏览器的相关的文件夹都删除(没正规卸载)的方法。谷歌update文件夹就算删除,还是会自动绑定的。修改默认浏览器为selenium的启动浏览器即可。解决: 打开edge设置/默认浏览器,关掉即可。按照上述步骤能过就不会自动更新了。但是设置会被自动重置为edge。服务、计划任务、防火墙。

2023-10-02 23:00:44 1066

原创 python爬取百度图片

打开网页。我们,发现能找到我们需要的img衔接,但是这是一个动态网页。我们每次向下滑动网页,会发现图片更新,而图片更新一般伴随着异步请求。并且,如下图所示:1.点击网络 2.点击Fetch/XHR随着下图红框异步请求次数增多。我们将异步请求衔接,在另一个标签页打开。发现他的响应数据有我们需要图片。

2023-10-01 13:54:38 434

原创 JS 拖拽事件

4. 将元素拖拽放置在容器中(在容器中松开鼠标),在在容器中绑定一个ondrop 事件中,同样需要调用 e.preventDefault() 方法来阻止默认行为。2.移动鼠标(monusemove),获取移动元素中鼠标的clientX、clientY 减去上边求出的鼠标到元素边界的距离 ,求出元素移动top、left值,赋给元素。下面有2个元素,判断2个元素是否碰撞,如果碰撞的情况非常多,我们可以考虑没碰撞的情况,下面满足任意一种情况就是没碰撞的。3.松开鼠标(monuseup),将鼠标移动事件清除清除。

2023-09-25 17:34:54 736

原创 SpringSecurity学习 - 认证和授权

我们自定义UserDatailService 实现UserDatailService接口,注入到spring容器中,这样就会在SpringSecurity的认证流程中调用我们自定义的实现类。@Service@Override// 用用户名查询对应User// 判断是否空throw new RuntimeException("用户名或密码错误");// 将查询到user封装到自定义UserDeatail中。

2023-09-16 10:09:39 434 1

转载 SQL查询去掉重复数据

首先,单个字段 -》用distinct对student_name 进行筛选,单个字段查询的话,可以看到已经将一个重复的test学生记录去掉了。上图举例说明:图中student_name 为 test的同学有两位,不同的是班级。一般用来返回不重复的记录条数,返回不重复的条数(去掉test重复的,就剩下6条)第二种:group by + count + min 去掉重复数据。count + group +min:去掉重复数据。加上group by 后,会将重复的数据去掉了。

2023-09-11 12:00:05 2310

原创 maven依赖找不到的解决:手动下载、多镜像导入。

maven中央仓库,远在国外,没下载,因为网络原因迟迟下载不下来,所以我们就需要配置一些国内的镜像仓库,来进行jar包的下载。但是阿里的仓库并没有收录中央仓库的全部jar包,因此导致我们有些jar包下载不下来,爆红。比如:我们要下载:找对对应包的版本号,点击进行下载。B下载: 访问:搜索:进而找到:com.alibaba.easyexcel.3.0.5 版本。进行下载。输入以下指令。这就是你jar包文件生成的路径。需要你自己拷贝粘贴到自己的maven仓库。我们就可以正常使用了。

2023-09-08 15:17:51 1298

原创 因为axios请求后端,接收不到token的问引出的问题

跨域指的是在浏览器环境下,当发起请求的域(或者网站)与请求的资源所在的域之间存在协议、主机或端口中的任何一个条件不同的情况。换句话说,只要协议、主机或端口中有一个不同,就会被认为是跨域请求。

2023-09-04 14:45:54 1733

原创 Vue.js 报错:Cannot read property ‘validate‘ of undefined“

起因,是我将elemnt-ui登录,默认放在mounted()函数里面,导致vue初始化就调用这个函数。导入时方法名字写错了,....?但是一开始报错的时候他没报错,而且点击跳转能正常跳转,正找到该函数?2. 我们vue初始化时,element-ui中。了,导致获取不了这个表单dom,我这显然不是。

2023-09-04 08:56:09 1070

原创 springboot + vue + elementui — upload解决跨域、实现图片上传

今日记录通过elementui上传时得到的问题。我们在本地部署的服务,前端服务请求后端接口,存在跨域问题,1.可以利用springboot解决跨域问题,这里不列举2.利用vue配置进行反向代理。

2023-09-03 22:12:43 1931

转载 vue图片路径问题

简单说就是:相对路径:以.开头的,例如./、../之类的。就是相对于自己的目标文件的位置。绝对路径:以/开头的。就是目标文件的真实路径。表示当前站点的根目录。

2023-09-03 21:11:17 779

转载 vue重复路由报错问题

Vue路由重复点击时会出现报错 Uncaught (in) NavigationDuplicated: Avoided redundant navigation to current location:XXX,虽然不影响运行结果,但最好还是处理一下。

2023-09-02 20:59:16 693

原创 居中一个元素(水平+垂直居中)

line-heignt == height ,能使文字垂直对齐,text-align:center,能使内容居中水平对齐。top 和bottom,right 和left属性都是相对的,调整一个,另外一个都会失效。我们利用方位属性,调至子元素相对于父元素的方位,达到居中的效果。行内式元素(内容大小撑起标签宽高)或文字,父元素,采用相对布局,子元素采用相对布局。

2023-08-26 15:52:12 463

原创 springboot 整合swagger 入门 使用

一定要看好版本。

2023-08-18 21:06:34 428

原创 关于vue中v-for绑定数据重新渲染的问题

set 是 Vue 提供的一个全局方法,用于向响应式对象中添加或更新属性,并触发视图更新。它接受三个参数:对象、要添加/更新的属性名或索引,以及新的值。(他虽然这样说,但是我直接修改数组和对象元素,是能够重新渲染的,但是v-for渲染数据不可以。我修改被v-for绑定的数据,发现居然不能重新渲染。

2023-08-18 18:05:33 861

转载 UML图绘制 -- 组件图、部署图

随着人们对计算机的认识加深,要求也越来越严格,希望计算机能够做的事情也越来越复杂,结构简单的单机版软件显然是不能满足用户的需求了。为了满足这些日益复杂的需求,软件的结构也变得越来越复杂。为了能够清楚的描述系统架构,让我们来了解一下部署图和组件图。

2023-08-16 09:45:48 1887

转载 UML图绘制 -- 用例图

但VS2010的用例模型图中,添加了。

2023-08-14 15:33:50 273

原创 UML图绘制 -- 类图

是在依赖的及基础上(成员变量),但是和关联表现的层级不同,关联表示同层级之间,而聚合表示整体和部分层级之间。而Employee类中的businessTrip[出差]() 方法需要Boss的同意,这就是关联。如果说,类图为了表现java中的类,那么类图的关系就代表java中中类、接口之间的关系。如: 人由手、脚、头等身体部位组成,但是手离开人和人离开手都不能做相应的方法。2个类依赖关系且是依赖,并且是依赖中的成员变量,则存在关联关系。如果一个类失去一个类代码无法编译,那么说这个类依赖于这个类。

2023-08-14 11:49:41 3011

原创 智能合约 -- 常规漏洞分析 + 实例

在上面的代码片段中我们可以看到,distribute() 函数中会去遍历投资者数 组,但是合约的循环遍历数组是可以被外部的人进行人为扩充,如果有攻 击者要攻击这个合约,那么他可以创建多个账户加入投资者的数组,让 investors 的数据变得很大,大到让循环遍历数组所需的 gas 数量超过区块 gas 数量的上限,此时 distribute() 函数将无法正常操作,这样就会造成该 合约的拒绝服务攻击。第一去取钱,状态变量修改为true,从而将函数锁住,必须等这次函数执行完毕,才能重新对函数进行调用。

2023-08-11 21:25:07 3656 4

空空如也

空空如也

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

TA关注的人

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