自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何使用AntPathMatcher实现网关的自定义白名单

3.创建单例模式的AntPathMatcher,这个有多中方式,我们可以使用单例模式通过双重校验,通过new 来创建单例模式的AntPathMatcher,也可以利用spring对对象的管理来实现。4.应用,对进入网关的url进行验证如果是在白名单中,则不走认证鉴权逻辑,否则保持原有的鉴权校验逻辑。LOGGER.info("白名单的url路径:****** {}",url);//此处根据实际情况进行处理为实际的路径。1.yaml文件中配置白名单列表。2.读取配置文件中的白名单列表。

2024-04-03 10:00:58 307

原创 SpringBoot如何集成nacos,用于服务发现和配置管理

1.创建srpingBoot的工程2.pom文件如下,如果出现无法正确读取nacos的配置,很大程度是因为jar包的版本问题导致,当前我使用的是。

2024-04-03 09:50:51 694

原创 前端跨域请求处理

true,那么在nginx中同样需要增加 add_header 'Access-Control-Allow-Credentials' 'true';但是一般情况我们,不建议在在ng中进行设置。# 设置允许携带凭据(如 cookies、HTTP 认证信息)# 设置允许跨域请求的来源,* 代表允许所有来源。前端如果请求的时候设置了。

2024-03-28 09:18:44 240

原创 python创建虚拟环境

conda create --prefix D:\python_envs\aiproject python=3.11.3conda activate D:\python_envs\aiproject

2024-03-22 00:51:33 109

原创 SpringBoot中引入了springcloud-gateway,路由不生效为什么?

<plugin>

2024-03-17 13:22:37 1206

原创 WebSocket多服务实例下的消息推送

最近在做一个项目,涉及到前后端的消息同步、推送,进而我们选择使用webSocket的方案进行实现,但是当websocket服务端部署在多个实例下,会出现前端socket意外断开导致无法收到消息的情况。因为使用的mq进行广播消息,使用exchange的机制,可以保证所有消费者只要是绑定到了对应的exchange上的队列都能消费,来解决多实例下的消息推送问题。这个配置很重要,如果不配置会出现websocket无法链接。2.注意服务端接收到客户端的心跳消息,不能使用异步推送的方式,这样会导致链接断开。

2024-03-17 13:09:33 1085

原创 spring-websocket 和 tomcat-embed-websocket 有什么区别,如何使用

spring-websocket` 和 `tomcat-embed-websocket` 都是用于支持 WebSocket 协议的库,但它们有不同的用途和实现方式。- `spring-websocket` 是 Spring Framework 的一部分,它提供了一种在 Spring 应用程序中处理 WebSocket 连接的方式。- 它允许您在 Spring 应用程序中轻松地创建 WebSocket 端点,并通过 Spring MVC 控制器或消息代理处理来自客户端的消息。

2024-03-11 23:00:23 610 1

原创 JenKins 中的new Item各个选项应该怎选择

通常情况下,如果您需要灵活地定义构建过程,并且不需要使用 Pipeline,那么 Freestyle Project 是一个不错的选择。如果您的项目需要复杂的构建流程,建议使用 Pipeline。如果您需要为每个分支创建独立的构建流水线,那么 Multibranch Pipeline 是一个不错的选择。适用于复杂的构建和部署流程,以及需要可重复使用和版本控制的构建过程。- 这个选项允许您连接到源代码托管服务(如 GitHub、Bitbucket 等)的组织,并自动发现并构建组织中的所有仓库。

2024-03-10 17:28:05 413

原创 JDK下载链接

Java Downloads | Oracle

2024-02-28 17:09:06 394

原创 Window10系统中找不到本地安全策略解决方法

3.运行执行完成后,在控制面板--》管理工具,中可以查看到本地安全策略。1.以管理员身份打开 windows命令窗口即 cmd 窗口。2.一次运行以下命令。

2024-02-28 16:44:58 266

原创 Pom文件中${basedir}

在这个项目中,${basedir}就指的是 my-project/ 这个目录的路径。无论你在项目的哪个 XML 文件中引用 ${basedir},它都会解析为这个根目录路径。这在构建脚本中指定文件路径或执行某些操作时非常有用,因为它提供了一种相对独立于具体工作目录的方式来引用项目的基础路径。${basedir} 指的是包含 pom.xml`文件的项目的根目录路径。在 Maven 项目中,无论你当前在项目的哪个子目录下,${basedir} 总是指向项目的最高层级目录,即包含 pom.xml的那个目录。

2024-02-26 16:49:38 426

原创 Pom文件中的scope到是什么作用

6. **import**(Maven 2.0.9 之后可用):用于 `dependencyManagement` 中,它将指定的 POM 文件中的依赖管理信息导入并合并到当前 POM 文件中。2. **provided**:编译和测试时需要这个依赖,但在运行时由 JDK 或者容器来提供。1. **compile**(默认值):编译依赖在所有 classpath 中都可用,同时也会被传递到依赖的项目中。适用于编译、测试和运行时。3. **runtime**:在运行和测试系统时需要,但在编译时不需要。

2024-02-26 16:45:59 676

原创 如何查询某个关键字在日志文件中最后一次出现的时间

grep -n 'gjj' access.log | tail -n 1 | cut -d ':' -f 1 | xargs -I {} sed -n '{}p' access.loggrep -n 'integralst' access.log | tail -n 1 | cut -d ':' -f 1 | xargs -I {} sed -n '{}p' access.loggrep -n 'company' access.log | tail -n 1 | cut -d ':' -f 1 | xarg

2024-01-31 10:11:05 117

原创 Linux系统中如何验证某个配置文件是否发生改变

其中第一个参数为要监测的文件,第二个参数为md5或者其他算法生产的文件hash。# 如果哈希文件不存在,创建一个新的哈希文件。# 在这里可以添加其他需要执行的操作。# 通过位置参数获取文件路径和哈希文件路径。# 从哈希文件中读取之前保存的哈希值。# 比如拷贝文件、发送通知等。# 比较当前哈希值和之前的哈希值。# 检查是否提供了足够的参数。# 计算当前文件的哈希值。

2023-12-28 10:42:42 471

原创 如何将A服务器的文件同步到B服务

path/on/remote/server/:B服务器的存储路径。但是-p不会保留文件用户信息如果还要保留用户信息则可以使用。登录A服务器,切换到需要拷贝的文件目录,执行一下命令。如果我们要保留源文件的属性信息使用-p命令。remote_host:B服务器IP。username:B服务器用户名。

2023-12-28 10:25:27 442

原创 如何使用OpenSSL创建秘钥对

现在,你就生成了一个 RSA 密钥对,私钥保存在 `private-key.pem` 中,而公钥保存在 `public-key.pem` 中。如果你想调整密钥的位数(默认是 2048 位),你可以在生成私钥时使用 `-aes256` 选项指定加密算法和密钥长度。在 Linux 中,你可以使用 OpenSSL 工具来生成密钥对。这将生成一个 RSA 私钥并将其保存到 `private-key.pem` 文件中。这将从私钥中导出公钥,并将其保存到 `public-key.pem` 文件中。1. 打开终端窗口。

2023-12-26 17:28:12 385

原创 系统内存莫名升高,排查过程

使用命令:sar -f /var/log/sa/sa27,查看27号之前每天的内存使用情况,发现内存内存一直在逐步升高。第三步:为了生产环境的完整,重启reboot 主服务器(10.xx.94),重启之后的机器内存占用只有5%,分奇怪,接下来就要分析是什么占用了大量的内存。4.测试机器我们写在了安装的安全组件,一下操作之后,77服务器上面除了操作系统什么也没有,内存依然居高不下,所以我们怀疑可能是操作系统的问题,因为重启之后,主机的内存已经降至5%,所以我们开始转换思路,对备机进行分析。

2023-11-30 14:46:53 135

原创 数据库字段,逗号拼接存储,如何将其拆分查询

SELECT *SELECT 1FROM (FROM dual) subquery='00';

2023-11-22 09:23:41 75

原创 CONDA创建虚拟环境

5. **轻松分享环境:** 通过将虚拟环境的配置保存到一个文件(如 `environment.yml`),你可以轻松地分享项目的环境配置,使其他人能够快速地在他们的机器上创建相同的环境。1. **隔离环境:** 虚拟环境提供了一个隔离的工作空间,允许你在不同项目之间使用不同的包和依赖项。2. **版本控制:** Conda 允许你指定每个虚拟环境中的包的特定版本,确保项目在任何时间点都能够复现。3. **依赖项管理:** Conda 能够自动解决和管理软件包之间的依赖关系,确保安装的软件包是兼容的。

2023-11-21 14:29:09 151

原创 Oracle数据不常用的函数

COALESCE` 和 `NVL` 都是 Oracle 数据库中用于处理 NULL 值的函数,但它们在一些方面有区别:1. **语法**:- `COALESCE` 的语法允许多个参数,它会从参数列表中选择第一个非 NULL 值。语法如下:`COALESCE(expr1, expr2, expr3, ...)`- `NVL` 只接受两个参数,第一个参数是要检查的值,如果它是 NULL,则返回第二个参数。

2023-10-12 06:15:48 168

原创 Linux 操作系统中如何检查系统的启动和关机日志

4. `load average: 0.23, 0.32, 0.35`: 这是系统的平均负载信息,它显示了系统上的平均负载情况。在这个示例中,1分钟的平均负载是0.23,5分钟的平均负载是0.32,15分钟的平均负载是0.35。`last -x` 命令中的 `-x` 选项是用于扩展 `last` 命令的输出,以显示更多的信息。通常,不使用 `-x` 选项时,`last` 命令的输出可能会更简洁,只包括用户名、登录时间和终端信息等基本信息。1. `14:32:23`: 这是当前系统的运行时间。

2023-10-12 06:05:54 372

原创 Linux系统中如何更改用户密码,以及验证用户密码是否更改成功

第一步:使用root进行登录,登录成功后passwd username。第二步骤:根据提示输入 密码 和 输入确认密码,提示更改成功后,表示需求成功。此时会提示,输入密码,输入正确密码后命令执行成功,即代表修改成功。第三步骤:验证是否修改成功。

2023-10-12 06:00:27 604

原创 Linux操作系统中如何查看系统层面的各项参数

【代码】Linux操作系统中如何查看系统层面的各项参数。

2023-09-15 06:57:16 499

原创 如何在,Linux中安装Luajit2.*

6.进入安装目录,cd /usr/local/include/luajit-2.0。4.make PREFIX=/usr/local,设置安装路径。2.将下载文件上传到对应的服务器:例如/opt。7.luajit -v 验证是否验证成功。5.make install,编译安装。3.进入对应的文件夹。

2023-08-28 18:18:31 706

原创 如何在Linux系统中安装openresty

注意:安装目的是需要再ng中执行lua脚本,所以在此之前我们需要安装luajit2.x 并且保证安装成功。5.配置设置安装路径./configure --prefix=/usr/local/openresty。3.通过命令进行文件的解压缩:tar -xvf openresty-VERSION.tar.gz。4.进入解压后的目录中 cd openresty-1.21.4.2。2.将文件上传到需要安装的服务上,我上传的目录是/opt。10.openresty -v 验证是否安装成功。

2023-08-28 17:59:53 607

原创 oracle 如何将时间戳毫秒数转换为日期

select t.*,(begin_at / (1000 * 60 * 60 * 24) + TO_DATE('1970-01-01 08:00:00', 'yyyy-MM-dd hh24:mi:ss') )CDATE from xa_dhcplat.sp_log_usr_action t WHERE T.SESSION_ID='a2b3dd4d8ae547149ad1e8419890e5dd'

2023-08-23 12:13:26 1066

原创 如何查看mysql中各个表的数据大小

这会显示 MySQL 数据目录的路径。在这个路径下,你可以找到每个数据库的文件夹,每个数据库文件夹中会包含各个表的。4.如果我们想以M为单位查看文件大小 可以执行ls -lh。3.进入对应的db,例如我自己的db为test。

2023-08-16 17:40:42 461

原创 Centos7.6系统升级openssh

首先,我需要强调,尽管我会提供基本的升级步骤,但在操作前,你需要确保已经创建了所有重要数据和配置的备份。升级过程中如果出现任何错误,可能会导致数据丢失。这是你需要做好的准备工作。接下来,我们可以按照以下步骤操作:1. **准备工作**:首先需要获取 root 权限,因为安装和升级系统软件需要 root 权限。在命令行中输入以下命令:```su```或者如果你在使用支持sudo的系统,你可以使用:```sudo su```输入你的密码以获取root权限。

2023-07-25 17:36:10 616

原创 oracle 数库如何查询表、自定义函数、存储过程、视图的个数

要查看 Oracle 数据库中特定用户拥有的表、存储过程、视图和自定义函数的数量,可以使用以下 SQL 查询。请注意,这些查询必须在具有足够权限的用户下运行,以便可以查看所有用户的对象。在这里,将 `'USERNAME'` 替换为你要查询的用户名称。在这里,将 `'USERNAME'` 替换为你要查询的用户名称。在这里,将 `'USERNAME'` 替换为你要查询的用户名称。在这里,将 `'USERNAME'` 替换为你要查询的用户名称。

2023-07-12 08:45:50 1822

原创 Linux系统中如何进行磁盘挂载

这行内容的意思是在每次系统启动时,都会把 `/dev/vdb1` 挂载到 `/data` 目录,文件系统类型是 ext4,挂载选项是 defaults,dump备份设置为0,fsck检查的优先级为0。2. `fdisk /dev/vdb`:这个命令会打开一个用来操作磁盘分区的程序,`/dev/vdb` 是你的数据盘的设备标识。5. `mount /dev/vdb1 /data`:这个命令会把你的数据盘的第一个分区(`/dev/vdb1`)挂载到 `/data` 目录。- `m`:显示所有可用的命令。

2023-07-08 18:50:34 1111

原创 RPM安装软件以及命令说明

因此,`rpm -ivh`命令的全称是“安装并在过程中以详细模式显示一个进度条”。这个命令后面应该接一个RPM包的文件名,如`jdk-8uXXX-linux-x64.rpm`,表示要安装的包。当你使用`rpm`命令安装RPM包时,安装的具体位置取决于RPM包中的定义。- `v`代表详细模式(verbose),表示在安装过程中会显示更详细的信息。- `h`代表散列(hash),表示在安装过程中显示一个进度条。- `i`代表安装(install),表示要进行的操作是安装。

2023-06-21 11:34:51 834

原创 OpenJdk 和 oracleJdk

OpenJDK的网站(https://jdk.java.net/)通常仅显示最新的几个版本,对于更早的版本,可能不再在主页面上列出。这是因为随着时间的推移,Java社区通常会专注于支持和维护最新的版本,并鼓励开发者尽可能地使用最新的Java版本。OpenJDK 8和9虽然可能不在OpenJDK主页上直观看到,但是它们仍然可以在一些地方找到:1. **AdoptOpenJDK**:AdoptOpenJDK是一个社区项目,提供了各种版本的OpenJDK的预编译二进制包,包括OpenJDK 8和9。

2023-06-21 11:24:54 577

原创 统信服务器操作系统UOS V20 各个版本说明

比如,UOS 的 A 版就是基于 OpenAnolis 的,而 UOS 的 E 版则是基于 OpenEuler 的。是由中国的开源社区发起并维护的一个开源项目,是一款基于 Linux 的开源、免费的操作系统。3. **大量的软件包**:Debian 仓库中包含了大量的预编译软件包,可以方便地通过包管理系统进行安装和升级。1. **开源**:Debian 项目坚持自由软件的原则,所有的源代码都可以在公共域中获取。4. **社区驱动**:Debian 是一个完全由志愿者组成的项目,没有商业公司的控制。

2023-06-16 17:26:28 5963

原创 Linux中软件源文件、安装目录的位置,安装建议

例如,你可以将Oracle安装在`/usr/local/oracle/`,将Nginx安装在`/usr/local/nginx/`,以此类推。例如,Nginx的配置文件通常放在`/etc/nginx/`或者`/usr/local/nginx/conf/`。3. **日志文件目录**:日志文件通常放在`/var/log/`目录下,你可以为每个应用创建一个子目录,例如:`/var/log/nginx/`,`/var/log/redis/`等等。然后,你需要将相关的目录的所有权赋给这些用户。

2023-06-16 11:10:02 3092

原创 如何将HTML转化为pdf

Open HTML to PDF是一个基于Java的库,用于将一部分合法的XML/XHTML(甚至包括一些HTML5)使用CSS 2.1(和后来的标准)进行布局和格式化,输出到PDF或图像【7†source】【8†source】。Open HTML to PDF的许可证是LGPL,你可以以任何方式、任何目的使用Open HTML to PDF,只要你尊重许可证的条款【9†source】。- 新的、更快的渲染器,使得这个项目在处理非常大的文档时能够更快。- 支持生成符合PDF/A标准的PDF。

2023-06-09 17:07:05 1532

原创 将json转换为java对象

2. `objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)`: 这个设置会让ObjectMapper在反序列化(将JSON字符串转换为对象)时忽略那些在对象的类定义中不存在的属性。这样,JSON字符串中的属性名就可以是任意大小写了,ObjectMapper都能正确地匹配到对象的属性。以上只是一些常用的设置,实际上ObjectMapper还有许多其他的配置项,可以根据需要进行设置。

2023-06-07 13:35:24 769

原创 PDF文件中,如何根据关键字,获取坐标信息

/ Y坐标 在这里减去的字体的长度,也可以直接 idx[1] = textPositions.get(i).getPageHeight()-textPositions.get(i).getY()// X坐标 在这里加上了字体的长度,也可以直接 idx[0] = textPositions.get(i).getX()// 需要进行一些调整 使得章盖在字体上。String keyWords = "纪海祥";// 多页pdf的处理*/// 关键字字符数组。// PDF文件路径。// 当前页信息集合。

2023-06-05 15:40:02 2097

原创 LINUX操作系统查看命令详解

在Linux系统中,你可以使用一些命令来查看操作系统的详细信息。以下是几个常用的命令:1. `uname -a`:显示有关内核的详细信息,包括内核版本、主机名和处理器架构等。

2023-05-29 14:30:06 2274 1

原创 大文件分片上传

/ 当所有分片都上传完毕后,合并所有分片到一个文件。// 保存每个分片到临时路径。// 文件保存的临时路径。

2023-05-26 11:21:05 561

原创 java8新特性

Lambda 表达式可以用于实现函数式接口(只有一个抽象方法的接口),从而简化代码。Lambda 表达式可以用于实现资源管理,例如,执行某个操作并在操作完成后自动关闭资源。Lambda 表达式可以与 Java 8 引入的 Stream API 结合使用,对集合进行各种操作,如过滤、映射、排序等。Lambda 表达式提供了一种简洁的编写函数式编程风格的代码的方法。Java 8 在 2014 年发布,引入了很多新特性,对 Java 语言和库进行了重要的改进。使用 Lambda 表达式可以简化事件监听器的实现。

2023-05-10 17:15:21 610

空空如也

空空如也

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

TA关注的人

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