自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java File类(文件操作类)

测试当前 File 对象表示的文件是否为一个绝对路径名。,当传入的path是一个实际存在的路径时,该File对象表示一个目录;返回表示当前对象的文件名或路径名(如果是路径,则返回最后一级子路径名)将当前 File 对象指定的文件更名为给定参数 File 指定的路径名。通过这种方式,我们可以。返回当前 File 对象指定的目录中满足指定过滤器的文件列表。创建一个目录,它的路径名由当前 File 对象指定。创建一个目录,它的路径名由当前 File 对象指定。返回当前 File 对象表示的文件最后修改的时间。

2024-03-27 20:52:33 950

原创 Java常用Lambda表达式与Stream流应用

Lambda表达式最初由函数式编程语言引入,但现在已经成为许多编程语言中的常见特性。

2024-03-27 20:40:34 681 3

原创 常用的前端(数组或对象等)操作技巧 -- 随记持续更新

在前端开发过程中,经常需要对数组和对象进行一些常用操作,下边是平常用到的一些常用方法随时记录随时记录更新。

2024-03-26 17:39:41 266

原创 前端 使用递归函数优化循环请求过程

递归函数是一种自我调用的函数,它可以在每次调用时处理不同的参数,并根据特定的条件来决定是否继续调用自身。通过递归函数,我们可以实现在每次循环之后再进行下一次循环请求的需求。递归函数是一种自我调用的函数,它可以在每次调用时处理不同的参数,并根据特定的条件来决定是否继续调用自身。通过递归函数,我们可以实现在每次循环之后再进行下一次循环请求的需求。首先,我们需要定义一个递归函数,例如。该函数接收一个参数,用于表示当前循环的索引。在函数内部,我们可以根据索引来获取相应的请求参数,并进行请求处理。

2024-03-26 15:28:33 691

原创 Promise.all使用

使用Promise.all可以方便地处理多个异步操作,并在它们全部完成后执行后续操作。

2024-03-25 19:48:42 229

原创 设计模式学习系列 -- 随记

最近可能工作生活上的稳定慢慢感觉自己丢失掉了从前对生活的冲劲,行业的那种压迫感也小了些,没有这些压力好吗?可能也好,但总会有种未雨绸缪的感觉,看到身边的同学朋友集成家业从医从政,相反程序员这个行业可能青春期就那么几年,需要为自己的以后考虑,要看得长久。可能也需要强迫自己去深入的学习一些知识,形成自己的东西,保持前进的脚步,就从设计模式开始吧...一、设计模式是什么?设计模式是软件设计中常见问题的典型解决方案。它们就像能根据需求进行调整的预制蓝图,可用于解决代码中反复出现的设计问题。

2024-03-09 16:26:29 1323

原创 前端框架的发展历程

前端框架的发展史就是一个不断进化的过程,它的发展和进化一定程度上反映了前端技术的发展历程。从最开始简单的 HTML页面,到后来的 CSS布局,再到现在流行的 Vue、 React、 Angular等等,都是通过前端框架的不断更新来实现的。随着 Web开发技术在近几年快速发展,前端框架也经历了很大改变。这些改变都是随着前端技术发展而不断变化的。可以说,前端框架就是 Web开发技术的一个缩影。本文将通过回顾这些年来前端框架发展历程,来了解一些前端框架发展变化。一、静态页面时代。

2024-03-09 10:43:17 1282

原创 VUE的生命周期

生命周期的“钩子函数”,表示的是生命周期的某一时刻。

2024-03-07 22:43:55 1041

原创 解决 JavaScript heap out of memory 报错

前台运行项目时候报错提示内存溢出了。

2024-03-07 17:29:52 205

原创 Mybatis动态SQL中IF标签判断失效

短文简说,在使用Mybatis动态sql 过程中需要if判断失效问题:如图,我将改参数传递到Mybatis中但是实际查询结果并未改变,SQL条件失效。

2023-11-28 13:10:28 563

原创 SQL 遇上 IN / NOT IN 注意有坑️

这就是有问题的地方,在项目实际使用SQL过程中及时某个字段存在null值但是不代表这条记录无效,当我同时需要这些null记录的时候就不能用 NOT IN 过滤了。我是用的数据库是达梦,其他数据库如果在使用 IN 或 NOT IN 某个字段时候如果字段存在null值,会存在查询不出结果情况,注意需要 额外增加条件。注意num字段中是包含null值的,接下来我需要查询出 num 字段中不包含99的所有数据。正常我们使用 IN 或 NOT IN是需要结果中包含某值或者不包含某值。这才是我们想要的结果。

2023-11-16 09:36:05 434

原创 Java实现文本查重(相似度) 无三方工具版本

为了避免此中情况发生,考虑对关键数据信息进行查重校验,原计划采用第三方标准查重接口,但过程比较繁琐,需要商务对接等时间,所以暂时在自身系统中实现数据查重检验。在对目标字符串和基础记录字符串进行预处理时,需要注意选择合适的方式来规范化这些字符串,例如字母大小写、空格和特殊符号等。在进行预处理时,要根据实际情况选择适当的方式来规范化文本,以便提高查重精度。当然,实现标准查重类似知网论文查重那种系统就太麻烦了,甚至可以独立出来一套系统了,所以就简单实现查重功能,针对名称 和 大文本内容实现查重。

2023-11-14 10:43:45 1882

原创 Java Aspose.Words进行word文档书签替换 、文档拼接

最近接到一个需求,步骤表单数据融合到world里。这个听起来简单,结合三方的DocxHelper填充数据不是什么难事,但是其中有一个需求是将动态将一个模版拼接多次。这个模版的数据是一个表格,每一列数据都要填充一次模版,所以模版循环拼接的次数是动态的。常规的子模版文件拼接父模版文件也是通过Aspose.Words完成的,拼接的位置是通过模版中的书签来确定,但是如果循环拼接就存在一个问题,这个书签我要动态的调整。昨天也是花了好久找这个修改书签的资料,但是大多都不好用,最后摸索出来一个方法,记录一下。

2023-10-13 11:34:39 630 2

原创 VUE公共组件封装示例

实际上在 Vue 中,每个单文件组件都可以作为一个独立的组件使用。但是某些地方重复使用的功能代码,我们可以提出来作为单独的公共组件封装使用,以提高代码复用性、可维护性和开发效率,同时统一样式和行为,降低维护成本。

2023-09-28 10:45:14 673

原创 Java导出Excel数据内容换行

一般我们所做的项目中不管是管理项目还是其他系统,基本上涉及表单基本上都会有导出数据的功能,将当前页面的数据导出到Excel中也是常规做法。正常的方式我们可能会想到将换行的字符串中拼接“\n” 或者 “”之类的换行符进行操作,但是实际上Excel不会识别成换行符。在 ASCII 编码中,CHR(10) 表示换行符(Newline),它是 ASCII 表中的第 10 个字符。但是指定的一些数据,比如一些分类数据或是逗号分隔的字符串,会有在Excel中实现换行的需求,其实很简单。

2023-09-25 16:12:34 2427

原创 SQL多行值合并一行字符串逗号分隔(LISTAGG )

是一个用于聚合操作的字符串函数,它在Oracle数据库系统中可用,当然达梦也可以。在其他数据库系统中,可能会有类似的函数用于字符串聚合操作,但具体的函数名称、语法和用法可能会有所不同。函数将相同学生的 “成绩” 字段值以逗号分隔的形式合并成一个字符串,并按照 “科目” 字段的顺序进行排序。在查询的SQL使用中我们可能会有这样一种需求:展示学生姓名和科目成绩,科目成绩用逗号分隔。聚合函数是 Oracle 数据库中的特定函数,用于将多个行的值进行连接。假设我们有一张学生表:姓名,科目,成绩。

2023-09-25 15:43:32 3982 1

原创 全局功能自定义说明

实际功能我通知说明区分类型,结合实际业务逻辑同时维护了,流程中的某个节点通知,思路大致相同,就不过多讲解,有了葫芦瓢还远吗。

2023-09-25 11:04:08 54

原创 CSS实现悬浮提示(通用)

如果class固定也可以只通过class选择器指向控件。#为id选择器,如果有id可以直接确认到指定控件最好。不会取的也可以通过浏览器检查页面找到。

2023-08-17 11:08:44 1382

原创 Docker 安装 DM8镜像(Mac)

这个错误是应该是因为本地映射目录配置有问题,Docker无法将主机的/data/dm8_01(这个是最早我测试的目录)目录挂载到容器的/opt/dmdbms/data目录,因为该目录没有被共享给Docker。这个错误是说在你的Docker环境中,已经存在一个名称为"dm8_01"的容器,并且处于运行状态。解决需要在你本地配置一个目录来跟dm的/opt/dmdbms/data做映射关联。镜像默认用户名/密码为: SYSDBA/SYSDBA001。切换到/opt/dmdbms/bin目录。直接下载(我用这种)

2023-08-12 12:32:52 655

原创 GIT生成SSH密钥、IDEA拉取代码

1、在对应环境(或内网)文件内,点击鼠标右键,选择"Git Bash Here",打开Git命令窗口。在C:\用户\Administrator\.ssh目录下,查看生成的SSH密钥。注意:"[email protected]"是你自己的邮箱地址。最后下载完成后IDEA会跳转到新项目窗口。gitconfig里面是你的配置信息。打开IDEA,新创建版本项目。

2023-08-09 09:30:55 426

原创 springBoot 部署Docker环境中

DockerFile文件内容(新建txt,修改文件内容后重命名)将你的jar包单独放一个文件夹中,开始编写docke。

2023-07-18 12:32:16 149 1

原创 Linux jar包启动、停止、查看状态 快捷脚本

在将Java项目部署到服务器上后,为了简化操作和提高效率,我们可以借助一个命令脚本来快速启动、停止和查看项目。这样可以避免反复执行繁琐的命令,提高开发效率。

2023-07-13 16:03:34 1310 1

原创 若依分离版 - 限制系统最大登录用户功能 - 实现

今天在处理这个功能时本能地想到,好像在配置文件中有印象过通过配置用户数量就可以实现 限制用户功能。但是找了半天没找到 ,后来想到 那是采用session时的一个maxSession参数,分离版使用JWT没有用到session也就没了。后来我就好奇为什么JWT没有类似的参数配置...(其实是因为我懒,不想写哈哈哈)

2023-06-19 18:24:48 513

原创 跨站请求伪造(CSRF)、主机头攻击、非GET/POST方法预防,一篇就够!

当前在处理系统安全测试缺陷问题时,发现诸多安全问题,记录解决过程和方法,分享共勉。解释:在计算机网络中,主机头攻击是一种网络安全攻击方式,它利用了网络协议栈中的缺陷,以伪造的IP地址为源地址向网络发送数据包,目的是在欺骗目标主机,使其认为这些数据包是从指定的合法源发出的,并从而欺骗目标主机执行一些攻击者预期的动作。主机头攻击通常也被称作,攻击者会伪造数据包中的。

2023-06-19 17:52:07 852

原创 pringBoot - 配置文件敏感信息加密

目的:为了保护敏感的数据库配置信息(如数据库用户名和密码),通常可以将它们加密后再储存在项目的配置文件中,以增加应用程序的安全性。Java Jasypt(Java Simplified Encryption)是一个Java加密库,用于易于使用的加密和解密文本、二进制数据和密码。它提供了简单、安全、灵活的加密技术,包括基于口令的、密钥的、哈希的和混淆的加密。

2023-06-07 12:24:24 322

原创 跨站请求伪造(CSRF)攻击原理及预防手段

随机化Token(CSRF Token):Token是用于验证网站请求者身份的一种机制,可以防止CSRF攻击。该Token会在每次访问页面时刷新,以确保每次请求都需要新的Token。例如,在web应用程序中,可以通过hidden field的方式将Token加入到表单中,提交时验Referer检查:在服务端校验请求头中的Referer字段,确保请求是来自合法的来源页面,常用于辅助Token机制的验证。

2023-06-02 23:58:05 3920 1

原创 会话重放之防御策略、手段

会话重放是一种攻击方式,攻击者利用先前记录的会话数据来重放或重新发送网络通信流量,以模拟合法用户的身份,从而绕过身份验证或欺骗目标服务器。这种攻击可以被用于窃取数据、执行未授权的操作或者伪造交易等危险行为。

2023-06-02 23:15:36 542

原创 优雅的判断实体不为null

Optional类是Java 8中新增加的一个类,它可以用来解决空指针异常问题,同时也可以用来优雅地判断一个实体对象是否为null。Assert是JUnit框架中提供的一种断言方式,它可以用来判断某个条件是否为true,如果不为true则会抛出异常。这是最简单也是最普遍的判断方式,只需使用if语句判断实体对象是否为null,如果不为null,则执行相应处理逻辑。在实际开发中,使用哪种方式来判断实体对象是否为null,要根据具体情况来决定。,则可以使用Assert断言来判断。

2023-05-25 17:41:14 2895

原创 IDEA 中关闭覆盖率提示

不小心点到 Run 'Application' with Coverage 按钮。

2023-05-25 17:32:39 1981

原创 JWT讲解

传统cookie&session模式是通过认证后将用户session信息保存在服务端,下次用户请求时候带上cookie(也可以叫JssionID)值,服务器就能够识别是那个用户发出的请求。但是如果在分布式部署环境下cookie&session模式就会存在session共享问题(有多台服务器,session只存了其中一台服务器中,下次访问其他服务器需要重新校验),不利于扩展。随着用户量的增多,服务端的开销也会变大。

2023-05-22 10:24:59 149 1

原创 binlog、redoLog、undoLog(简洁)

主要记录了数据的逻辑变化,比如一条INSERT语句,对应一条DELETE的undo log,对于每个UPDATE语句,对应一条相反的UPDATE的undo log,这样在发生错误时,就能回滚到事务之前的数据状态。是InnoDB存储引擎层的日志,又称重做日志文件,用于记录事务操作的变化,记录的是数据修改之后的值,不管事务是否提交都会记录下来。是归档日志,属于逻辑日志,是以二进制的形式记录的,记录数据库执行的写入性操作(不包括查询)。主要场景有两个“ 主从复制”和“数据恢复”;

2023-05-06 10:15:35 63

原创 redis-Pipeline(管道)

redis-Pipeline(管道)

2023-04-25 21:56:55 753

原创 SQL清空表(高效)

一般情况下我们需要清空表用到delete,但是delete是一条一条数据来删除的,直到表清空,但是遇到数据量大的时候差距就很明显了,耗时久。当然有更好的办法,删除表数据但保留表结构使用truncate更快速也更安全。

2023-04-12 16:41:33 6729

原创 mybatis插入记录返回ID

执行插入数据库后我们需要这个插入数据的id;

2023-04-06 18:13:12 306

原创 初识 Nacos,Feign

Nacos 是阿里巴巴开源的一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。他是使用 java 编写。

2023-04-06 18:09:49 147

原创 PostgreSQL 批量创建序列并使用序列

迁移生产数据库过程中发现问题,PG多张表公用一个序列,实际上如果表中数据每日变动量较小的话理论上是可行的。但是如果太大就考虑需要单独为每张表建立一个序列,并使其id自增。不过确实没有mysql方便可以直接设置“自增主键”,每次创建序列确实麻烦。于是...

2023-03-17 11:18:27 1493

原创 maven安装报错 - please verify you invoked maven from the correct directory.

maven安装报错 - please verify you invoked maven from the correct directory.

2023-03-01 12:38:54 1686 1

原创 NGINX下部署VUE项目是如何执行的

npm run build,生产环境打包,其中.env和.env.production文件会加载。,npm run serve,启动项目,并且加载.env和.env.development文件。,npm run serve-test,启动项目,并且加载.env和.env.test文件。,npm run test,测试环境打包,其中.env和.env.test文件会加载。,npm run all,生产环境和测试环境同时打包,加载不同的.env文件。贴一下package.json文件的命令配置说明。

2023-02-28 15:00:17 1185

转载 LINUX 下部署 DOCLEVER

LINUX 部署 DOCLEVER官网文档地址:文档阅读-DOClever 移动时代首选接口管理平台!配置Node环境cd /usr/localwget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xzxz -d node-v9.3.0-linux-x64.tar.xztar -xvf node-v9.3.0-linux-x64.tarmv node-v9.3.0-linux-x64 ./node 配置环境变量

2021-11-05 17:06:40 418

空空如也

空空如也

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

TA关注的人

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