自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(135)
  • 资源 (4)
  • 收藏
  • 关注

原创 使用 ClassFinal 对 java class 文件进行加密防止反编译

ClassFinal 是一款 java class文件安全加密工具,支持直接加密 jar 包或 war 包,无需修改任何项目代码,兼容 spring-framework;-cfgfiles 需要加密的配置文件,一般是classes目录下的yml或properties文件(可为空,多个用","分割)-classpath 外部依赖的jar目录,例如/tomcat/lib(可为空,多个用","分割)在需要加密的 jar 包的目录打开 cmd 窗口,执行上面的加密命令,对 jar 进行加密。

2024-09-04 16:39:39 1515

原创 Jenkins保姆级教程

jenkins 有 2 种流水线分为声明式流水线与脚本化流水线,脚本化流水线是 jenkins 旧版本使用的流水线脚本,新版本 Jenkins 推荐使用声明式流水线。文档只介绍声明流水线。

2024-09-04 16:32:21 860

原创 SpringCloud gateway (史上最全)

SpringCloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。

2023-11-27 16:18:36 6114

原创 Jenkins-流水线-保姆级教程

Jenkins流水线模式保姆级别的教程

2023-04-27 11:11:06 2481

原创 使用WxJava快速接入微信公众号

总体来说集成还是比较顺利,但是有几个点还是要重点说下:环境准备这个很重要,很多文章没有说清楚,都不知道开始要准备什么,这里看到需要一个外网能访问的服务和一个公众号,公众号可以直接使用测试账号。关于外网服务可以去百度内网穿透,免费的有很多直接拿来用就行。配置服务接口认证的URL,一定要是能具体到我们的接口的。网页授权填写域名时,域名不要添加http:// 等协议头 ,直接www.xxx.com 即可。

2022-12-28 11:25:40 3059 2

转载 Nginx+keepalived主从与双主架构总结

7)抢占模式与非抢占模式:Master会以组播方式不断的向虚拟路由器组内发送自己的心跳报文,一旦Backup在设定时间内没有收到心跳信息的次数超过了设定次数,则会将Master的所有权转移到优先级最高的Backup,则就是抢占模式。这种方案,使用一个vip地址,前端使用2台机器,一台做主,一台做备,但同时只有一台机器工作,另一台备份机器在主机器不出现故障的时候,永远处于浪费状态,对于服务器不多的网站,该方案不经济实惠。通过主机之间的优先等级以及心跳检测来及时切换准备主机的工作状态,以提高集群的高可用性。

2022-09-26 15:59:17 872

原创 如何批量上传Maven仓库jar包到Nexus3.x私服

如何批量上传Maven仓库jar包到Nexus3.x私服

2022-07-29 17:18:47 6270 1

原创 Docker离线安装

Docker离线安装

2022-04-07 13:49:46 3103

原创 基于docker部署Oracle 19c

基于docker部署Oracle 19c

2022-04-06 16:25:09 4011 2

原创 两种方式迁移 Docker 的默认安装(存储)目录

两种方式迁移 Docker 的默认安装(存储)目录

2022-03-29 11:30:52 969

原创 Docker安装Oracle 12c

Docker安装Oracle 12c

2022-03-29 10:46:49 3845 2

原创 docker安装Mysql8.0的坑之lower_case_table_names

docker安装Mysql8.0的坑之lower_case_table_names

2022-01-26 14:34:57 4234 1

转载 SpringBoot 配置加载优先级详解

一、概述本文是网上查了查相关资料,这里整理记录一下,方便总结归纳。主要针对spring.profiles.active、spring.config.location以及spring.config.additional-location的作用机制及优先级问题进行实践对比。二、配置文件优先级介绍2.1加载位置与顺序SpringBoot启动会扫描以下位置的application.properties/yml文件作为spring boot的默认配置文件:file:./config...

2021-12-31 15:51:21 4448

原创 我将Spring Boot的配置信息扔在了jar包外面

通过命令行指定 外置配置文件 自定义配置文件 按Profile不同环境读取不同配置 Spring Boot程序默认从application.properties或者application.yaml读取配置,如何将配置信息外置,方便配置呢?查询官网,可以得到下面的几种方案:通过命令行指定SpringApplication会默认将命令行选项参数转换为配置信息例如,启动时命令参数指定:java-jarmyproject.jar--server.po...

2021-12-31 15:50:28 227 1

原创 Nginx 配置之XSS,Frame,隐藏版本号

提高安全性的最佳 Nginx 配置,xss

2021-12-29 15:20:00 538

原创 gitlab-docker 一直无限重启的解决方案,新建个容器

用docker搭建gitlab,这次因为自己的服务器扩容,所以直接关机了,没有在docker中关闭gitlab,然后启动gitlab的时候,一直无限重启,如图百度了一圈,没有什么结果,之前刚开始搭建那会儿,也一直出现这种情况,因为当时情况比较多,处理着处理着问题就解决,所以,个人怀疑容器坏了,又重新新建了一个容器,最后正常了,因为宿主机的映射关系还是原来的映射关系。最后发生这种情况的原因也不知道,新建个容器就正常了。新建容器命令还是原来的,容器名改变下就好了docker run -d.

2021-12-10 14:11:37 3577

原创 Spring Cloud Eureka 服务实现不停机(Zero-downtime)部署

互联网产品高速迭代,通常伴随着高频次的版本发布。部署新版上线需要重启服务,直接 kill 服务进程可能会造成服务短暂不可用,从而影响到正在使用的用户。

2021-11-23 10:02:13 895

原创 Linux分支Centos虚拟机忘记密码迅速修改方法

一、适用场景linux管理员忘记root密码,需要进行找回操作。注意事项:本文基于centos7.7环境进行操作,由于centos的版本是有差异的,操作之前请确定好对应的版本。注:修改root用户和普通用户密码都适用①知道root用户密码,忘记普通用户密码。直接登录root用户,执行passwd user(user为普通用户名的名称,注:在Linux系统中与Mysql一样用户名不分大小写,所以如果你的用户名是大写的,这里统一输入小写,例如:KANG则输入kang),输入两次相同的密码即可重...

2021-11-17 11:15:02 1211 2

原创 CentOS 7 为firewalld添加开放端口及相关资料

firewalld简介Centos7中默认将原来的防火墙iptables升级为了firewalld,firewalld跟iptables比起来至少有两大好处:1、firewalld可以动态修改单条规则,而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效;2、firewalld在使用上要比iptables人性化很多,即使不明白“五张表五条链”而且对TCP/IP协议也不理解也可以实现大部分功能。

2021-09-01 11:01:59 1642

原创 单点登录的三种方式

单点登录的本质就是在多个应用系统中共享登录状态。

2021-08-30 11:08:30 3415 1

原创 性能跟踪三板斧

JVM调试工具#jps查看所有的jvm进程,包括进程ID,进程启动的路径等等。我自己也用PS,即:ps -ef | grep java#jstack观察jvm中当前所有线程的运行情况和线程当前状态。系统崩溃了?如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。系统hung住了?jstack工具还可以附属到正在运行的java程序中,看到当

2021-08-30 09:46:24 1231

原创 RSA加密、解密、签名、验签的原理及方法

目录一、RSA加密简介二、RSA加密、签名区别  总结:公钥加密、私钥解密、私钥签名、公钥验签。三、RSA加密、签名的方法,代码例子如下:一、RSA加密简介  RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程,分别称为公钥和私钥。两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥,公钥是公开的(可能同时多人持有)。二、

2021-08-27 15:53:58 425

原创 SpringBoot2.* GateWay网关中关闭security验证

package com.njcb.corp.gateway.security;import lombok.extern.slf4j.Slf4j;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.security.config.annotation.web.reactive..

2021-08-23 10:59:22 1187

原创 springboot项目后台启动jar 和开机启动

1.注册服务,开机启动添加服务vim /etc/systemd/system/admin.service复制粘贴以下内容:[Unit]Description=config serviceAfter=syslog.target [Service]Type=simpleExecStart=/usr/develop/java/jdk1.8.0_221/bin/java -jar -Xms3072m -Xmx3072m -XX:CompressedClassSpaceSize=1

2021-08-18 10:19:31 273

原创 spring-cloud中zuul的两种隔离机制实验

ZuulException REJECTED_SEMAPHORE_EXECUTION 是一个最近在性能测试中经常遇到的异常。查询资料发现是因为zuul默认每个路由直接用信号量做隔离,并且默认值是100,也就是当一个路由请求的信号量高于100那么就拒绝服务了,返回500。信号量隔离既然默认值太小,那么就在gateway的配置提高各个路由的信号量再实验。routes: linkflow: path: /api1/** serviceId: lf st

2021-07-29 17:11:25 1072

原创 spring-cloud中zuul的两种隔离机制实验

ZuulException REJECTED_SEMAPHORE_EXECUTION 是一个最近在性能测试中经常遇到的异常。查询资料发现是因为zuul默认每个路由直接用信号量做隔离,并且默认值是100,也就是当一个路由请求的信号量高于100那么就拒绝服务了,返回500。信号量隔离既然默认值太小,那么就在gateway的配置提高各个路由的信号量再实验。routes: linkflow: path: /api1/** serviceId: lf st

2021-06-02 15:45:24 227

原创 对linux安装中文字体库

一、问题描述:#  linux提供的web服务,能在网页展示中文,下载pdf出现中文无法读取!,甚是迷瞪,经分析展示是本地浏览器的解析,下载pdf是服务器端的响应,因此要在服务端安装对应的字体库就可以解决此问题!问题解决:#  Linux安装对应的中文字体库!#linux安装中文字体Windows下的ttf/ttc字体是可以在linux上使用,确定网页端使用的字体类型,必须对的上!#os系统环境centos6.5simsun.ttc //宋体常规宋体常规下载:download

2021-06-02 15:16:27 7034 1

原创 Zuul切换Thread隔离模式的正确方法

默认情况下,Zuul的隔离策略是SEMAPHORE 。但一些场景下,我们可能需要将隔离策略改为THREAD 设置zuul.ribbonIsolationStrategy=THREAD 即可(注意:execution.isolation.strategy=THREAD这个配置不会生效)。当 zuul.ribbonIsolationStrategy=THREAD 时,Hystrix的线程隔离策略将会作用于所有路由。此时,HystrixThreadPoolKey 默认为“RibbonCommand”。这意味着

2021-05-31 16:49:38 465

原创 解决Nginx的13: Permission denied) while connecting to upstream

一、nginx报错日志13: Permission denied) while connecting to upstream[root@node4 conf.d]# tail -f /var/log/nginx/error.log;2021/05/26 15:13:05 [crit] 27863#0: *52 connect() to 180.xxx.xxx.12:80 failed (13: Permission denied) while connecting to upstream,

2021-05-27 10:43:30 2520

原创 @FeignClient注解 中属性 contextId使用

一、概述如果我们使用Feign定义了两个接口,但是目标服务是同一个,那么在SpringBoot启动时就会遇到一个问题:Description:The bean 'optimization-user.FeignClientSpecification', defined in null, could not be registered. A bean with that name has already been defined in null and overriding is disabled.

2021-05-27 10:14:36 7571 1

原创 Spring Cloud Feign调用异常:feign.RetryableException: connect timed out executing POST http://xxx

一、概述在使用Spring Cloud Feign接口调用时,发现调用接口链接超时,报错信息如下:feign.RetryableException: connect timed out executing POST http://xxx本案例使用 nacos 注册中心前景提要:提供方的服务已经在开发环境注册中心注册,本地开发服务调用方时,使用开发环境的注册中心,调用服务提供方二、排查方案排查一:如果注册中心含有多个命名空间,则需要保证调用方、提供方的微服务在同一个命名空间...

2021-05-27 10:07:39 5972

原创 CentOS8.x使用yum安装MySQL8数据库

环境概述:CentOS8.x采用最小安装 系统为:CentOS8.0.1905 最终安装MySQL版本:8.0.17一、安装1.1 使用MySQL的官方repo源,安装MySQL8cd /usr/local/src# 下载MySQL的官方repo源wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm# 安装Yum Repositoryrpm -ivh mysql57-community-

2021-05-24 11:03:02 453 2

原创 Docker容器部署CDH

Docker容器部署CDH文章目录Docker容器部署CDH一、 概述1.1目的1.2 linux服务1.3 容器服务1.4 端口相关二、 具体操作流程2.1 安装docker[绿色安装]2.1.1解压docker压缩包2.1.2复制docker 部署文件夹2.1.3启动docker服务2.1.3.1 方式一:直接启动docker服务2.1.3.2 方式二:自定义docker服务2.1.4测试安装是否成功2.1.4.1方式一 docker -v2.1.4.2方式二 docker info2.1.4.3 方

2021-05-17 14:02:57 3893

原创 修改jar文件,重新打包

目录一、报错二 、处理方案2.1方案一:2.1.1解压jar文件2.1.2修改解压后后的文件2.1.3 重新打包2.2方案二:一、报错Caused by: java.io.IOException: Unable to open nested jar file 'BOOT-INF/lib/xxxx-0.0.1-SNAPSHOT.jar' at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(.

2021-05-17 10:25:51 695

原创 oracle中“ORA-01502: 错误成因和解决方法

目录一、索引失效二、处理策略2.1 重建索引2.2 重建所有索引一、索引失效2.1 错误信息:### The error occurred while setting parameters### SQL: insert into USER_LBL_INF( LBL_ID,LBL_NM,USERID,CRT_TM) values( ?, ? , ? , ? )### Cause: java.sql..

2021-04-26 18:43:10 11458

原创 oracle中“ORA-00060: 等待资源时检测到死锁” 或存储过程编译卡死 解决方法

目录一、概述二、解决方案2.1查看那些表被锁住以下是执行结果截图:​2.2 查看引起死锁的会话以下是执行结果截图:​2.3 查看被阻塞的会话2.4 释放锁或者杀掉ORACLE进程以下是执行结果截图:一、概述之前在调试存储过程时,出现卡死情况,无法插入数据报错信息:oracle中“ORA-00060: 等待资源时检测到死锁” 或存储过程编译卡死 解决方法二、解决方案2.1查看那些表被锁住SELECT b.owner,...

2021-04-26 18:34:26 2370

原创 SpringBoot添加swagger2接口文档并添加全局Authorization参数

目录一、依赖包二、配置类(securitySchemes与securityContexts作用为配置全局Authorization参数)三、实际效果截图一、依赖包<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</versi.

2021-03-31 17:25:59 1056

原创 dubbo注册中心细节

一、常规写法1.1在配置dubbo注册中心时,一般写法dubbo.registry.protocol=zookeeperdubbo.registry.address=127.0.0.1:21811.2在配置dubbo注册中心时,也可以写成dubbo.registry.address=zookeeper://127.0.0.1:21811.3当zookeeper地址不止一个dubbo.registry.protocol=zookeeperdubbo.registry.ad..

2021-03-26 15:31:24 2076

原创 Linux 杀掉所有Java进程

目录一、 Linux查看所有Java进程二、使用awk分割结果,获取PID三、杀死进程 kill -9 PID一、 Linux查看所有Java进程ps -ef | grep java | grep -v grep(是在列出的进程中去除含有关键字"grep"的进程)二、使用awk分割结果,获取PIDawk '{print $2}'ps -ef | grep java | grep -v grep |awk '{print $2}'三、杀死进程 kil...

2021-02-24 17:43:19 7223

原创 springboot 搭建dubbo入门,附可以跑通的源码,完整详细搭建过程

目录一、开发环境二、zookeeper 注册中心2.1 简介2.2 下载以下下载地址可以选择版本:zookeeper-3.6.2 下载地址2.3 解压部署解压后将config 目录下的 zoo_sample.cfg 复制改名为 zoo.cfg2.4 启动zookeeper三、dubbo-admin的部署运行3.1简介3.2在开发dubbo前先部署运行 dubbo-admin 的原因3.3 下载、打包使用下载地址:下载后的目录结构:dubbo-.

2020-12-24 10:40:52 1013

一个后台的html模板

一个好看的后台模板页面,纯html后台,方便大家使用!

2015-03-13

深入理解Java虚拟机++JVM高级特性与最佳实践

深入理解Java虚拟机++JVM高级特性与最佳实践

2015-03-13

eclipse中的hadoop插件

windowXP上运行着eclipse以及hadoop-eclipse插件,但是本文的重点不是说如何在eclipse上安装hadoop的开发插件。

2014-07-22

包jdom包包包

JDOM是一种使用 XML(标准通用标记语言下的一个子集) 的独特 Java 工具包,用于快速开发 XML 应用程序。它的设计包含 Java 语言的语法乃至语义

2014-05-09

空空如也

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

TA关注的人

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