自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(226)
  • 资源 (2)
  • 收藏
  • 关注

原创 添加阿里云yum源

完成以上步骤后,你就成功添加了阿里云的 yum 源。

2024-04-25 16:10:21 27

原创 mac下安装python并编写脚本实现s3上传功能

这样就可以通过命令行参数传递 AWS 访问密钥、密钥、存储桶名称、本地文件路径和 S3 中的文件路径,从而实现文件上传到 AWS S3 的功能。接下来,你可以编写一个 Python 脚本来实现 S3 文件上传。以下是一个简单的示例脚本,假设你已经安装了。将上述代码保存为一个 Python 脚本文件(例如。

2024-04-25 11:50:23 167

原创 通过Maven profile实现既支持war包方式也支持fat jar方式

您可以通过使用 Maven 的 profiles 来实现既支持 WAR 打包方式,也支持可执行的 JAR 文件(fat JAR)方式。您可以在不同的 profile 中配置不同的。通过这种方式,您可以根据需要选择不同的 profile 来构建 WAR 包或者可执行的 JAR 文件。来引用这些 profile 中定义的属性。

2024-04-07 16:20:11 218 2

原创 Spring Boot 构建war 部署到tomcat下无法在Nacos中注册服务

因此,当使用外部容器时,如此处的 Tomcat 来部署项目,AbstractAutoServiceRegistration 就不能监听到容器启动事件了,也就不会尝试向服务注册中心注册当前这个微服务,那么注册就失败了,并且也就没有异常信息了。自定义获取获取外部容器端口的方法, 然后监听应用启动事件,当应用被启动时,获取外部容器启动的端口号,然后将这个 port 设置到 NacosAutoServiceReigistration 中。在启动类同级目录,复制下面代码即可(不需要修改,直接构建war即可)

2024-04-07 16:07:27 1010

原创 Unable to load host key: /etc/ssh/ssh_host_rsa_key

制作镜像时Dockerfile添加如下内容。启动docker镜像时报错。

2024-03-19 20:44:42 290

原创 rosetta error: failed to open elf at /lib64/ld-linux-x86-64.so.2

在MacOS使用docker build构建镜像时提示如下错误注意观察,这个库函数里面有x86-64字样,指的是支持64位运算的X86架构的CPU,这种CPU一般由Intel和AMD家生产的芯片。而如果恰好你的电脑是搭载Apple Chip例如M1/M2/M3的MacBook,那么系统里是没有这个函数库的,就会报错。解决办法是在Docker引入Base操作系统的时候,加上指定AMD64格式,然后重新打镜像。

2024-03-14 16:38:08 582

原创 IDEA如何删除git最新一次远程提交

选择最新提交上一次提交 -> Reset Current Branch to Here…选择应用 -> Git -> Show History。push到远程分支 -> 选择Force Push。Reset 提示框选择 Hard。结果验证 (最新分支已被删除)

2024-03-14 09:45:58 506

原创 how to deploy parent pom without module deployment

how to deploy parent pom without module deployment

2024-02-29 16:30:51 365

原创 FTPS 227 Entering Passive Mode

FTPS 227 Entering Passive Mode

2023-10-25 17:06:53 407

转载 布隆过滤器

当你往简单数组或列表中插入新数据时,将不会根据插入项的值来确定该插入项的索引值。这意味着新插入项的索引值与数据值之间没有直接关系。这样的话,当你需要在数组或列表中搜索相应值的时候,你必须遍历已有的集合。若集合中存在大量的数据,就会影响数据查找的效率。针对这个问题,你可以考虑使用哈希表。利用哈希表你可以通过对 “值” 进行哈希处理来获得该值对应的键或索引值,然后把该值存放到列表中对应的索引位置。

2023-10-11 16:22:02 109

转载 DDD 建模工作坊指南

本指南的目的是通过工作坊的形式,让软件开发团队取得对业务的共识(统一语言),并输出能够落地使用的领域模型。为软件的编写和维护提供指导,帮助软件工程师设计出合理的架构。四色建模法名词动词法用例驱动法事件风暴是一种 “自底向上” 的设计方法,先关注具体的业务细节,然后通过归纳、聚合、抽象的方法获得整体层面的认知和设计。事件风暴的发明人是 Alberto Brandolini ,它来源于 Gamestorming,通过工作坊的方式将领域专家和技术专家召集到一起,进行共创建模。

2023-09-21 20:37:22 212

原创 使用PageHelper进行分页

在上述配置中,我们配置了数据源、SqlSessionFactory和SqlSessionTemplate,然后创建了一个PageHelper的Bean,并设置了PageHelper的属性。完成上述步骤后,你就可以在Spring MVC中使用PageHelper进行分页查询了。作为参数,调用Mapper接口的分页查询方法,并将查询结果添加到Model中,然后返回一个视图名。作为参数,调用Mapper接口的分页查询方法,并将查询结果添加到Model中,然后返回一个视图名。

2023-09-21 16:36:17 1135

原创 Spring Boot实现web.xml功能

通过上述介绍我们了解到,在Spring Boot应用中,我们可以通过注解和编程两种方式实现web.xml的功能,包括如何创建及注册Servlet、Filter以及Listener等。至于具体采用哪种方式,大家可以根据自己的喜好自行选择。

2023-09-18 18:04:03 2124

原创 Java AOP Framework概述

通过上述介绍,希望大家能够明白AspectJ和Spring AOP框架的原理及实现方式,以及了解Spring AOP采用了AspectJ的注解但没有采用其织入方式,而是通过动态代理的方式(JDK动态代理和CGLIB动态代理)生成代理类和代理对象。Spring AOP支持自动代理,如果目标对象实现了接口,则会采用JDK动态代理,如果没有实现接口则采用CGLIB动态代理。可以通过配置改变使用哪种动态代理,Spring Boot2.0前后的默认配置不同等。

2023-09-18 14:50:30 208

原创 Java中代理的实现方式

在Java中,有多种方式可以实现代理,包括:invoke()invoke()Enhancer这些代理方式各有特点,可以根据具体需求选择适合的方式。静态代理相对简单,但需要为每个目标类编写一个代理类;JDK动态代理适用于基于接口的代理;CGLIB动态代理适用于没有实现接口的类的代理。

2023-09-16 15:59:49 293

原创 三门问题讨论

参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,露出其中一只山羊。问题是:换另一扇门是否会增加参赛者赢得汽车的机率。如果严格按照上述的条件,那么答案是会。不换门的话,赢得汽车的几率是1/3。换门的话,赢得汽车的几率是2/3。第一个结论是不换门的话,赢得汽车的几率是1/3。换门的话,赢得汽车的几率是2/3。第二个结论是换不换门结果都一样。你支持哪一种写法呢?

2023-09-08 21:00:15 174 1

原创 使用redis实现队列功能

使用redis实现队列功能操作方法描述LPUSHLong lPush(String key, String… values)将一个或多个值 value 插入到列表 key 的表头,返回插入后列表中value的数量,若key不存在,会创建一个新的列表并执行 LPUSH 操作RPOPLPUSHString rPopLPush(String source, String destination)列表 source 中的最后一个元素(尾元素)弹出,并返回给客户端,将 sour

2023-09-05 21:53:45 646

原创 Mac下使用Homebrew安装MySQL5.7

如果执行报错 zsh: command not found: mysql_secure_installation。

2023-08-29 17:43:53 1261

原创 availableProcessors is already set to [10], rejecting [10]

实例化ES客户端时,我们尝试初始化进程的数量。由于在其他地方使用了Netty且已经初始化,因此实例化失败。在该类中增加静态代码块,禁用ES设置netty进程数的配置。客户端创建TCP链接报错。

2023-06-01 22:06:34 238

原创 hive常用命令记录

取yyyy-MM-dd HH:mm:ss格式日期串的yyyy-MM-dd部分,使用字符串SUBSTR函数;不支持delete column操作,可以使用replace columns实现字段删除操作;假设现在有如下数据(表 score )可以使用case when来实现。我们希望以如下方式展示。删除column_C。

2023-06-01 15:57:26 700

原创 Camel FTP Component中的任务调度实现原理

之前我们介绍了和。今天介绍一下再Camel的FtpComponent组件中是如何实现任务调度的,如果有了以上两篇文章做基础,下面的内容将会非常简单了。其中重点留意以下两个参数,这两个参数的意思是使用Quartz任务调度,使用cron触发器,每5分钟执行一次任务。那么Camel是如何将这两个endpoint的配置项转换为具体的QuartzScheduler的呢?我们知道Camel的endpoint可以创建consumer和producer。

2023-03-27 21:17:00 424

原创 Camel Quartz Component创建QuartzScheduler的过程

首先创建Quartz配置,然后创建StdSchedulerFactory,然后创建StdScheduler。然后在Spring配置文件中进行配置,例如如果要调整Quartz线程池的大小可以参考下面的配置。在QuartzComponent启动时会对QuartzScheduler进行初始化。在创建QuartzScheduler之前首先要创建SchedulerFactory。如果使用Spring Boot可以引入自动配置包。

2023-03-27 20:29:16 423 1

原创 org.quartz.jobStore.misfireThreshold配置的作用

Cron Trigger还有另外一种MISFIRE_INSTRUCTION_DO_NOTHING策略,针对该策略Cron Trigger的处理为设置setNextFireTime为触发器的下一次正常触发时间。如果同时满足执行条件的Trigger比较多,而线程池却比较小,那么可能导致有些Trigger在规定的时间没有被触发,对于这些未被按时触发的Trigger,Quartz是如何处理的呢?第二步:对misfire Trigger的处理,这个针对不同的Trigger,其处理逻辑不同。

2023-03-23 22:20:46 788

原创 Spring如何实现Quartz的自动配置

如果想在应用中使用Quartz任务调度功能,可以通过Spring Boot实现Quartz的自动配置。以下介绍如何开启Quartz自动配置,以及Quartz自动配置的实现过程。

2023-03-22 21:10:34 2214

原创 mac下如何通过putty生成证书

目前有两个主流的密钥格式:OpenSSH格式的密钥 和 PuTTY格式的密钥,今天尝试使用PuTTY生成密钥。

2023-03-01 15:07:52 694

原创 web.xml中Filter如何引用Spring中定义的Bean

【代码】web.xml中Filter如何引用Spring中定义的Bean。

2023-02-03 17:59:25 214

原创 [WARNING] Unable to autodetect ‘javac‘ path, using ‘javac‘ from the environment.

我是在IDEA -> Maven Setting -> Runner -> Environment variables 新增用户环境环境变量。请尝试设置一下JAVA_HOME。且此时你又发现有这个警告的时候。

2023-01-20 17:32:00 2222

原创 Spring3.*中ASM和JDK8版本冲突问题及解决方案

Spring3.* 中ASM版本较低,不支持对 JDK8 class文件进行操作,启动时报错。org.springframework.asm.MethodVisitor.visitParameter

2023-01-16 18:20:52 1107

原创 Spring Boot 整合 RabbitMQ 实现

而RabbitAdmin Bean是在RabbitAutoConfiguration自动配置类中注册的,通过设置 spring.rabbitmq.dynamic 为false可以禁用该功能。下列代码创建类型为topic、名称为test_topic_exchange的exchange,当routingKey满足test.#时消息会被路由到 test_queue 队列。查看Consumer端日志,未回告原因是因为Consumer端没有处理test_queue队列中String类型消息的Handler。

2022-09-30 20:59:46 1545

原创 mac下如何搭建rabbitmq服务器

mac下搭建rabbitmq服务器步骤

2022-09-29 16:21:29 1170

原创 mac下如何安装homebrew

mac下如何安装homebrew。

2022-09-29 10:53:29 2008 2

原创 MacOS 12 Monterey根目录无法创建目录

可以通过synthetic.conf 文件来创建一个虚拟链接连接到数据盘,类似 ln -s 的软链接。MacOS 12 Monterey直接在根目录创建目录会提示。第一个是要创建的文件夹名,第二个是要链接到的现有路径。如果写成了空格,会导致频繁重启,无法进入系统。假设要在根目录创建 data 文件夹。...

2022-08-31 14:28:47 1815

原创 加密狗资料搜集

圣天诺为开发商提供了多种方案选项,从硬锁系列、软锁(软授权)到云端授权,开发商可根据产品设计的需要、场景的需要或用户的偏好,选择理想的保护、授权方案。以下是常见的选择偏好类型:适合选择硬锁的场景:在离线环境下,希望即插即用,且不受系统重装或硬件更换的影响;希望为自己的软件产品配一把实体硬件锁;或者配合一把带有时钟芯片的保护锁,可以精准控制软件运行时间等场景。适合选择软授权的场景:在虚拟化、容器化环境下部署的软件;希望将软件与特定硬件设备绑定运行;没有USB接口的设备;用于拓展海外业务(最终用户不喜欢硬锁);

2022-06-21 18:01:25 280

原创 加密狗厂商及工作原理介绍

在当今中国市场上最主要的加密锁品牌有:  1、美国彩虹公司(也是最早做硬件加密的公司)的国产品牌“加密狗”、美国品牌“圣天诺软件加密锁”;   2、阿拉丁的“HASP”系列加密锁;   3、德国威博公司的“WBU-KEY”加密锁;   4、深思洛克的“深思加密锁”;   5、蓝宇风公司的“⾦盾加密锁”;   6、飞天公司的“ROCKEY”加密锁等⼏个主要品牌。     以上加密锁品牌的⼯作原理都是⼤同⼩异:被保护的软件--加密锁之间形成⼀⼀对映的关系,被保护的软件在运⾏的过程当中不断通过其A

2022-06-09 18:33:43 2863

转载 加密狗工作原理和破解方法简介

加密狗是目前流行的一种软件加密工具。它是插在计算机接口上的软硬件结合的软件加密产品。一般有USB口和并口两种,又称USB加密狗和并口加密狗,目前流行的一般是USB加密狗,并口加密狗在前几年的时候用得比较多。加密狗内部一般都有几十到几十K字节的存储空间可供读写,有的内部还增添了一个单片机。软件运行时通过向狗发送消息,判断从接口返回密码(简单的就是返回0或1)数据正确与否来检查加密狗是否存在。此种方式可以通过直接修改返回值,来达到破解的目的。另一种可以在加密狗内写入一些数据,程序执行时需要从加密狗内读取数据,这

2022-06-09 17:06:04 14261 2

原创 应用软件保护方法

应用软件保护方法从应用软件的角度,也许确实没有办法来防止软件被最终破解,因为一旦软件发布,所有的防卫方法也就都固定了下来,可是攻击和破解的方式却是无穷的,破解只是时间问题。我们真正能做的,就是尽量增加软件被破解的难度和包括破解的时间成本。当然也包括平衡我们自己要保护的软件本身的价值,来采取合适的保护措施。分类保护方法备注线索隐藏(1)隐藏或者加密关键信息和提示 (2)核心检测代码加密关键字,避免使用和License文件或者界面提示信息同样的明文,例如: “incorrect_u

2022-05-27 10:20:54 463

转载 Nginx做反向代理和负载均衡时“X-Forwarded-For”信息头的处理

Nginx做反向代理和负载均衡时“X-Forwarded-For”信息头的处理一、概述二、简单web架构图三、X-Forwarded-For的定义四、依照WEB架构图进行分析一、概述如今利用nginx做反向代理和负载均衡的实例已经很多了,针对不同的应用场合,还有很多需要注意的地方,本文要说的就是在通过CDN后到达nginx做反向代理和负载均衡时请求头中的“X-Forwarded-For”项到底发生了什么变化。二、简单web架构图三、X-Forwarded-For的定义X-Forwarded-Fo

2022-04-29 18:22:31 5935

原创 如何对json串按key排序

如何对json串按key排序原JSON串{ "key-a": "val-a", "key-b": "val-b", "key-c": "val-c", "key-e": [ { "key-e-4": "val-e-4", "key-e-3": "val-e-3" }, { "key-e-2": "val-e-2", "key-e-1": "val-e-1" }],

2022-04-25 18:49:52 4095 2

转载 JCA - 核心类和接口 - Provider类

JCA - 核心类和接口 - Provider类Provider类如何请求和提供Provider实现安装Provider安装Provider类注册Provider静态注册动态注册设置Provider权限Provider类方法Provider类术语“加密服务提供者(CSP)”(在本文档中与“Provider”可互换使用)是指提供JDK安全API加密功能子集的具体实现的一个或一组包。Provider类是这种包或一组包的接口。它有用来访问Provider名称,版本号和其他信息的方法。请注意,除了注册加密服务的

2022-04-24 22:01:37 1115

转载 JCA - 核心类和接口

JCA - 核心类和接口本节介绍JCA提供的核心类和接口:Providerand Securityclasses,SecureRandom, MessageDigest, Signature, Cipher, Mac, KeyFactory, SecretKeyFactory, KeyPairGenerator, KeyGenerator, KeyAgreement, AlgorithmParameters, AlgorithmParameterGenerator , KeyStore, and C

2022-04-24 21:25:28 218

2022年软件货币化现状.pdf

2022年软件货币化现状.pdf

2022-06-27

领域驱动设计

领域驱动设计,进行领域建模,作为有效地沟通工具,提高软件开发质量。

2014-08-21

空空如也

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

TA关注的人

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