自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (7)
  • 收藏
  • 关注

原创 腾讯云linux启动nginx报错:error while loading shared libraries: libssl.so.10

腾讯云VM-16-7-opencloudos,解压绿色版的nginx,启动、检查安装信息时报错:./nginx: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory需要安装的compat-openssl10包,不是openssl包

2023-03-22 10:01:03 2416 1

原创 linux查看JDK、JRE安装路径详细分析

如果环境里安装了多个版本或多个路径的jdk,那么要搞清楚真正使用的jdk是哪一个是很重要的,特别是不同版本的时候(如jdk8和jdk11)which,和whereis的区别$JAVA_HOME和$PATH的作用

2023-03-16 20:17:55 2801

原创 405 Method Not Allowed,CORS跨域,来也自动化OCR接口报错,Nginx处理OPTIONS请求

405 Method Not Allowed,CORS跨域,来也自动化OCR接口报错,在Nginx拦截处理OPTIONS请求

2023-02-11 13:12:36 3961

原创 服务端返回内容跨域CORS之后,也在chrome/edge浏览器里显示出响应信息

由于浏览器的同源策略,服务端返回的内容跨域,且没有允许跨域CORS的请求头之后,浏览器无法显示出服务端返回的信息,不方便问题排查。--disable-web-security --disable-web-security --user-data-dir==用户配置具体路径Block insecure private network requests

2023-02-10 20:43:37 1525

原创 CORS过滤器优先级不对,预检请求正常,正式请求报错CORS跨域

预检请求有返回Access-Control-Allow-Origin信息,并没有引发CORS错误。而正式请求还未执行到CorsFilter,在执行EfFilter时就已经遇到错误,响应给浏览器了,因此响应头里不包含CORS信息。CORS跨域的正确配置方式。过滤器顺序的设置,FilterRegistrationBean的使用

2023-02-08 20:24:17 2169 3

原创 Spring Cloud Gateway从注册中心自动注册配置路由信息

Spring Cloud Gateway的请求流程,使用的具体路由信息的匹配。从注册中心自动注册的路由信息的自定义配置,服务id(serviceId)和根路径一样时,报错404

2023-01-16 19:46:42 2631

原创 Xshell5、6、 7 打开提示 要继续使用此程序,您必须应用最新的更新或使用新版本

点击了更新之后,自动在后台处理、下载资源,可是过了一小段时间之后,提示:当前已经是最新版本,然后就自动关闭了。打开-提示更新-点击更新-提示当前已经是最新版本。需要填写姓名、邮件地址,然后到邮箱里下载就行了。如果是公司使用,那么去官网,付费下载商业版吧。

2022-12-18 19:13:15 820

原创 SpringBoot文件上传同时,接收复杂参数

SpringBoot上传文件,如果需要复杂参数(自定义对象接收前端参数),那么需要自定义消息转换器(如AbstractJackson2HttpMessageConverter),来支持contentType值是'application/octet-stream'类型的参数,并将其转换成目标格式;如果不需要复杂参数,只是String等类型,那么不需要自定义消息转换器;消息转换器是SpringBoot处理前端传输的数据,并转换成接口参数的类型的转换器,转换前、转换后还支持自定义插件处理。

2022-12-18 17:43:02 7520 1

原创 NoSuchMethodError、NoClassDefFoundError的常见原因和通用解决方式

java.lang.NoSuchMethodError,类加载机制、maven仲裁机制、Arthas查看运行时类,java.lang.NoClassDefFoundError: Could not initialize class com.xxx,构造方法、类初始化静态数据

2022-11-26 12:48:14 4662

原创 Spring Cloud版本,Spring Boot版本详细对应关系

有多个方式可以查看Spring Boot和Spring Cloud版本的详细对应关系。

2022-11-21 14:16:49 2051

原创 非root用户,没有root权限,安装nginx

不给root用户,也不给root权限,使用指定普通用户,将nginx安装到指定目录。nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)

2022-08-08 09:45:05 4933

原创 Spring Boot自定义注解+AOP,使用guava的RateLimiter实现接口的限流

Spring Boot自定义注解+AOP,使用guava的RateLimiter实现接口的限流。支持通过配置文件设置是否开启限流,限流的大小,以及超时时间

2022-07-31 15:49:51 1530 1

原创 创建文件,如果文件的上级(或上上级等)目录不存在,则先创建上级目录,再创建文件

如果直接使用targetFile.createNewFile();来创建文件,那么在targetFile的上级目录不存在的情况下,会抛出异常。parentFile.mkdirs();的作用是创建嵌套文件夹,因此如果上级目录的上级目录不存在,那么都会被一起创建。...

2022-07-19 20:44:05 577

原创 AOP高级特性,Advice Parameters,在拦截方法里配置参数、自定义注解对象等

以下这种多了target对象。也可以用pjp.getTarget()得到。通过JointPoint获取入参、当前对象、目标对象、注解等信息。因为定义在了入参里,可以直接使用对象。1.用于增加筛选符合条件的拦截对象;

2022-07-19 14:40:38 327

原创 RabbitMQ,手动ACK情况下,消费消息的时候出现异常,如何手动ACK或NACK

@RabbitListener里的errorHandler(实际是RabbitListenerErrorHandler)的方式来处理,并把spring-amqp的版本提升到2.1.7以上,消息消费出现异常之后,进行手动的ack或者nack

2022-07-07 11:27:20 5224

原创 Rest请求使用Jackson反序列化报错,Cannot deserialize instance of `java.lang.String` out of START_OBJECT toke

Rest接口,使用Jackson作为json转换器,后端接收请求的时候报错了,异常信息: 请求报文:异常信息是很详细、明确的, Cannot deserialize instance of `java.lang.String` out of START_OBJECT是说无法将字段,从START_OBJECT(Object类型,即对象)转换为String(字符串类型)(through reference chain: com.xxx.TradeDto["body"]->com.xxx.dto.FxsFsDto

2022-07-06 11:14:36 3840

原创 win10使用VMware启动虚拟机如CentOS7,外部机器蓝屏重启

解决方案1.win10系统,没有开启虚拟机功能2.VMware版本太低 系统:win10虚拟机:VMware 16.0.0虚拟机系统:CentOS 6或7新的电脑,安装了win10系统,安装了VMware15或16之后,想要重新安装CentOS 6或者7,或者从老电脑复制迁移之前安装的CentOS 6。已经将老电脑的CentOS 6的虚拟机关机,并打包好了对应的虚拟机文件夹在新电脑的VMware中,打开,选择从老电脑复制的虚拟机文件夹里的.vmx文件,加载一小会儿,整个电脑就蓝屏......

2022-07-05 19:52:05 4520 2

原创 maven根据profile变量引入或者不引入依赖,引入不同版本的依赖

maven根据profile变量设置环境信息,引入或者不引入依赖,引入不同版本的依赖,设置不同环境各自的属性值

2022-07-05 19:27:46 1633

原创 SpringBoot排除不需要的自动配置类

SpringBoot排除不需要的自动配置类,以及根据配置文件的属性,自动加载需要的自动配置类

2022-06-24 15:24:53 8146

原创 Spring Boot 配置文件加载源码解析与升级遇到的坑

SpringBoot 配置文件加载SpringBoot2.4以后SpringBoot2.4及以后,取消ConfigFileApplicationListener,改成了EnvironmentPostProcessor、RandomPropertySourceEnvironmentPostProcessorEnvironmentPostProcessor子类实现的加载本质上SpringFactoriesLoader进行类的加载,加载时机是通过ApplicationEnvironmentPrep

2022-04-28 09:43:24 684

原创 批量修改Jenkins的job任务配置,JenkinsClient、JenkinsServer

使用jenkins-client批量修改job任务配置

2022-03-29 17:00:27 1725

原创 Jenkins调用shell脚本提示command not found

使用Jenkins拉取git分支来构建应用,并自动部署:使用ssh将文件传输到指定服务器,并调用服务器上的shell脚本tfb-app-service.sh来启动应用,报command not found

2022-01-26 14:11:11 2156

原创 IDEA里,无法识别pom.xml文件,自动导入项目,导入父pom.xml也无法自动关联子工程的解决方法

IDEA里,无法识别pom.xml文件,自动导入项目的解决方法

2021-11-30 18:17:53 3960

原创 请求路径不对,预检请求preflight返回404,导致真实请求返回CORS错误

目录环境信息问题描述解决方案解决思路解决方法不同的路径错误现象上下文路径不对chrome浏览器网络控制台火狐网络控制台第一个请求:真实请求第二个请求:预检请求preflight非上下文的路径不对chrome浏览器控制台第一个请求:预检请求preflight第二个请求:真实请求源码分析调用链CoyoteAdapter.javaMapper.javaCoyoteAdapter.java总结...

2021-10-26 20:25:13 2586

原创 mvel2报错:java.lang.VerifyError method: getKnownEgressType signature

mvel2:2.0.19异常信息:java.lang.VerifyError: (class: ASMAccessorImpl_3009129941634644382940, method: getKnownEgressType signature: ()Ljava/lang/Class;) Illegal type in constant pool调用的方法是org.mvel2.MVEL类的以下方法:public static Object executeExpression(O..

2021-10-24 19:57:45 2610

转载 logback 配置详解(一)——logger、root

1、根节点<configuration>包含的属性scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。例如: <configuratio

2021-09-30 17:01:25 2010

原创 slf4j、logback、log4j打印出的日志行号不正确,如何获取正确的行号(调用者类里的行号)

环境信息SpringBoot2.1.15.RELEASEslf4j:1.7.25logback:1.2.3说明系统使用的是slf4j+logback日志组合,而且为了系统的个性化需求,封装了自己的日志操作类Log.java,不是直接使用slf4j的API:private static Logger logger = LoggerFactory.getLogger(xxx.class);配置信息logback配置:logback.xml&lt...

2021-09-22 22:47:03 6758 3

原创 Springboot项目使用jasypt加密配置文件中的敏感信息

项目背景 Spring Boot 2.0.8 在项目中,经常需要在配置文件里配置一些敏感信息,比如数据库用户名和密码,redis、mq的连接信息等。如果直接写明文,很容易造成密码泄露等安全问题。jasypt简介Jasypt 是一个 Java 库,它允许开发者以最小的努力为他/她的项目添加基本的加密功能,而且不需要对密码学的工作原理有深刻的了解。jasypt 和spring boot的版本对应关系

2021-09-15 14:33:06 3784

原创 Result Maps collection already contains value for问题

目录项目场景:问题描述:原因分析:解决方案:步骤:特殊情况:项目场景:Spring Boot+Mybatis项目问题描述:使用IDEA启动的时候报错了,异常信息:Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apa

2021-09-03 15:22:32 726

原创 Spring Boot全局异常处理,包括404等异常

在Spring Boot、Spring MVC、Spring Cloud中,全局异常处理有多种处理方案:1.ErrorController方式2.@ControllerAdvice加上@ExceptionHandler方式全局异常处理实现方式1.ErrorController方式这种方式可以处理所有的异常信息方式1:实现ErrorController接口方式2:继承BasicErrorController类@Controllerpublic class MyError

2021-09-01 15:30:49 2929

原创 Spring Boot项目跳转到/error接口,比如遇到404等HTTP状态码

SpringBoot、SpringCloud、SpringMVC项目,使用tomcat容器,在404、500等错误之后,默认跳转到了BasicErrorController类的/error接口。BasicErrorController.java@Controller@RequestMapping("${server.error.path:${error.path:/error}}")public class BasicErrorController extends AbstractErrorC

2021-08-31 20:22:48 6511 2

原创 RequestContextHolder分析

RequestContextHolderRequestContextHolder

2021-08-30 21:54:14 310

原创 从request里获取客户端的ip

public static String getIpAddress(HttpServletRequest request) { String ip = request.getHeader("x-forwarded-for"); if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Client-...

2021-08-30 15:58:19 813 2

原创 idea操作git获取其它分支的文件

需求: 代码有多个分支,其中一个分支A是专门给一个项目组使用的,和master分支差别比较大。在公司开发的时候,提供给项目组的代码需要单独对比、合并,不能直接从master合并到分支A。操作: 在开发的过程中,整理好需要合并到分支A的代码清单。在idea里的操作:1.先切换到A分支:在代码所在的工程上右键,选择Git-Branches,在A分支上选中Check Out2.获取master分支和A分支的差异文件...

2021-08-17 15:17:19 2988

原创 LambdaQueryWrapper、LambdaUpdateWrapper、LambdaQueryChainWrapper的使用

在使用Mybatis Plus的时候,之前不知道有LambdaQueryWrapper这东西,使用的是QueryWrapper,这样就导致了一个问题,在代码里写入了数据库的字段名,这样属于硬编码的方式,于是感到很不舒服,不可能这么好用的Mybatis Plus,还存在这么明显的不人性化的东西。经过一番百度、查看官方文档之后,得知了LambdaQueryWrapper的存在,解决了硬编码的问题。举例:SpuInfoEntity.java 商品spu信息@Data@TableName("pms_

2021-06-26 23:53:47 14439

原创 SpringBoot项目启动失败,Ambiguous mapping. Cannot map ‘xxxController‘ method

项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述:提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obtainMessage(READ_DATA, bytes,

2021-06-08 11:52:00 1406

原创 idea读取配置文件如ValidationMessages.properties中文乱码

环境信息:idea2021.1.1(注:如果是其它版本的idea,也可能会出现这个问题)SpringBoot2.1.15.RELEASE问题描述:ValidationMessages_zh_CN.properties、ValidationMessages_zh_CN.properties

2021-06-05 13:26:45 1510 4

原创 idea启动项目失败 YAMLException 中文文件编码格式

背景:idea2021.1.1(注:如果是其它版本的idea,也可能会出现这个问题)SpringBoot2.1.15.RELEASE

2021-06-05 13:06:17 1184 2

转载 Java 获取泛型的类型实例详解

Java 获取泛型的类型实例详解Java 泛型实际上有很多缺陷,比如不能直接获取泛型的类型,不能获取带泛型类等。以下方式是不正确的:①.获取带泛型的类的类型 1 Class lstUClazz = List<User>.class ②获取局部变量泛型的类型 1 2 3 4 5 6 7 8 9 10 11 12 13

2021-05-25 19:16:03 1006

转载 序列化和反序列化

摘要这里说的序列化、反序列化是针对数据结构和二进制之间的相互转换。比较常用的序列化协议有 hessian、kyro、protostuff序列化和反序列化几乎是工程师们每天都要面对的事情,但是要精确掌握这两个概念并不容易:一方面,它们往往作为框架的一部分出现而湮没在框架之中;另一方面,它们会以其他更容易理解的概念出现,例如加密、持久化。然而,序列化和反序列化的选型却是系统设计或重构一个重要的环节,在分布式、大数据量系统设计里面更为显著。恰当的序列化协议不仅可以提高系统的通用性、强健性、安全性、优化

2021-05-24 21:45:41 282

chrome谷歌版CORS Unblock插件,0.3.6版,用于chrome浏览器在跨域CORS之后,能够正常响应

chrome谷歌版CORS Unblock插件,用于chrome浏览器在跨域CORS之后,能够正常响应

2023-02-10

境内外币支付系统与直接参与机构业务系统接口规范.rar

该资源是境内外币支付系统与直接参与机构业务系统接口规范,境内外币支付功能和swift清算差不多,报文相对应比如FMT100对应MT103

2019-09-05

银行等金融机构外汇业务数据采集规范1.1版本

银行等金融机构外汇业务数据采集规范1.1版本,外汇管理局下发的采集规范

2018-10-24

Everything-1.4.1.877.x64中文便携版

Everything-1.4.1.877.x64,中文便携版,64位,可以选择安装系统服务。最好用的文件搜索软件之一

2018-10-24

swift报文规范 中文版 2018年11月升级前的版本

swift报文规范,该版本是2018年11月升级前的版本,电子版方便携带,中文版方便阅读

2018-10-24

EmEditor pro绿色便携破解版

EmEditor Professional (64-bit)Version 17.7.0 ,打开超大文本文件的利器

2018-10-23

BandicamPortable_4.2绿色便携破解版

Bandicam是非常好用的录屏软件,绿色便携版,网课等必备

2018-10-23

linux下Oracle常用命令

linux下Oracle常用命令,如启动数据库、启动监听、建用户、建表空间等

2018-10-09

空空如也

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

TA关注的人

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