自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

御前提笔小书童

俭以养德,静以修身 —— 1/2极客

  • 博客(137)
  • 资源 (13)
  • 问答 (2)
  • 收藏
  • 关注

原创 《伸手系列》之分布式锁Redssion入门和源码解析

Redisson简介Javaer都知道Jedis,Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持。Redission也是Redis的客户端,相比于Jedis功能简单。Jedis简单使用阻塞的I/O和redis交互,Redission通过Netty支持非阻塞I/O。Jedis最新版本2.9.0是2016年的快3年了没有更新,而Redission最新版本是2018.10月更新。Redission封装了锁的实现,其继承了java.util.concurrent.lo

2020-06-30 23:19:14 1046

原创 《伸手系列》之基于springboot的动态数据源启动器

一个基于springboot的快速集成动态多数据源的启动器 简介dynamic-datasource-spring-boot-starter 是一个基于com.baomidou二次开发的springboot的...

2019-12-25 23:12:00 354

原创 《伸手系列》第三集-Docker入门三步走(一)

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。 Docker通常用于如下场景:web应用的自动化打包和发布; 自动化测试和持续集成、发布; 在服务型环境中部署和调整数据库或其他的后台应用;...

2018-07-31 22:26:39 337

原创 《伸手系列》第二集-oracle数据库“灾难性”数据恢复-(一)

文章开始之前,先把重要的事情说三遍,不要随便用‘truncate’、不要随便用‘truncate’、不要随便用‘truncate’!!!可能你觉得它比delete速度快的多,但是你是否真的确定你的数据没删错吗?好吧,你百分百确定是不要的数据,那么你确定你在执行truncate操作的时候,连的是你的测试库吗?昨天晚上的例子,同事加班加累了在测试库测试的时候,没注意在执行truncate表的时

2017-10-11 11:48:50 3427 5

原创 《伸手系列》第一集-Shiro安全认证框架的从入门到“出门”

1.Shiro简介--author:写文章的需要,所以写简介里面的内容给完全的新手,大家心急的可以直接拉到第二点开始。Apache Shiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供一个直观而全面的认证,授权,加密及会话管理的解决方案。实际上,Shiro的主要功能是管理应用程序中与安全相关的全部,同时尽可能支持多种实现方法。Shiro是建立在完善

2017-09-02 11:07:29 2349

原创 Redis超级新手指南-下篇(哪吒篇)

可用高性能分布式缓存解决方案(Rdeis)1.简述    本文将从以下几个方面详细讲解redis,看过上篇(福禄篇)的可以直接跳过简介,这里只是保证文章的可读性.(在word上写完才拷贝过来的(几天才写完),所以可能看起来不太舒服)v redis简介v sentinel 功能v twemproxy特性v twemproxy + redis + sentinel 实现re

2017-08-30 10:03:52 3469 3

原创 Redis超级新手指南-上篇(福禄篇)

Redis简介Redis是一款开源的、高性能的键-值存储(key-value store)。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数据类型。 对于这些数据类型,你可以执行原子操作。例如:对字符

2017-08-29 15:20:59 4574 4

原创 史上最详细最全的Linux上安装Oracle的教程-centos7-humf

一、安装Oracle前准备1.创建运行oracle数据库的系统用户和用户组[humf@localhost ~]$ su root  #切换到rootPassword: [root@localhost sonny]# groupadd oinstall  #创建用户组oinstall[root@localhost sonny]# groupadd dba  #创建用户组dba

2017-07-27 12:53:59 72829 20

原创 重庆智能交通综合管理系统认证中心SSO接入

重庆智能交通综合管理系统认证中心SSO接入提示:统一身份认证平台为局内用户提供用户身份鉴别服务,单点登录功能。平台提供统一用户、权限管理和系统接入等能力,可以更高效的管理人员变动和权限调整。同时承担各个业务系统与门户的跳转认证责任。前言此文档基于OAuth2.0的Authorization Code授权模式一、实现原理SSO单点登录是基于共享统一身份认证平台的cookie来实现的,对接流程如下:1.当系统A登录成功后2.统一身份认证平台里面会保存了系统A中的登录信息建立全局会话,并把自

2021-10-26 20:42:58 884

原创 Linux批量修改文件名

文章目录前言一、操作命令二、详解1、 # 号截取,删除左边字符,保留右边字符。2、 ## 号截取,删除左边字符,保留右边字符。3、 %号截取,删除右边字符,保留左边字符4、 %% 号截取,删除右边字符,保留左边字符前言例如:在工作中经常会遇到要在linux系统下,批量修改目录里文件名的需求,很多人习惯一个文件一个文件的修改,这里就是帮忙解决批量修改文件名的问题,也提醒大家遇到问题多搜一搜解决办法提示:下面案例可供参考一、操作命令示例:for name in `ls *`;do mv $n

2021-10-24 15:52:49 8654

转载 elasticsearch的服务器响应异常及应对策略

1 _riverStatus Import_fail问题描述: 发现有个索引的数据同步不完整,在 http://192.168.1.17:9200/_plugin/head/ 在browse - river里看到 _riverStatus Import_fail查看 elasticsearch 的log发现 有几条数据由于异常造成同步失败,处理好数据好重新建索引数据同步正常。2 es_rejected_execution_exception <429>此异常主要是因为请求数过多,es的线

2021-07-31 15:58:32 1992

原创 docker容器无法访问宿主机报出 No route to host

项目场景:提示:docker容器无法访问宿主机报出 No route to host:例如:防火墙环境下,docker容器无法访问宿主机的其他应用端口原因分析:在进行docker部署的时候我们采用的是bridge网桥的模式。启动docker时,docker进程会创建一个名为docker0的虚拟网桥,用于宿主机与容器之间的通信。当启动一个docker容器时,docker容器将会附加到虚拟网桥上,容器内的报文通过docker0向外转发。如果docker容器访问宿主机,那么docker0网桥将报文直

2021-07-31 15:50:47 8503 5

原创 SpringBoot 使用JavaMailSender

邮件发送是一个非常常见的功能,最初 Sun 公司提供了 JavaMail 用来实现邮件发送,但是配置烦琐。后来 Spring 中提供了 JavaMailsender 用来简化邮件配置,而 Spring Boot 则提供了 MailSenderAutoConfiguration 对邮件的发送做了进一步简化。在开始之前我们需要申请开通 POP3/SMTP 服务或者 IMAP/SMTP服务。这里使用的是Foxmail邮箱:操作步骤如下:为了保障用户邮箱的安全,QQ邮箱提供了POP3/IMAP和Exchan

2021-05-31 18:30:04 2383 2

原创 gbase字段长度

项目场景:国产Gbase数据库使用中发现一些和常用的数据库的区别,尤其是最近做ETL同步经常发现数据同步失败原因分析:这类问题,常见的异常是字段超过长度,但是建表语句中两个源的表设置字段长度是一样的。其实原因是因为gbase的长度和MySQL等数据库长度不一致造成的解决方案:目前简单的解决办法是:gbase的长度设置相比mysql的需要调整成3倍,超过255长度的 类型改成lvarchar关注Github:1/2极客关注博客:御前提笔小书童关注网站:开发者的花花世界关注公众号:开

2021-03-30 18:15:20 1660

原创 Oracle删除表中多余的重复数据

项目场景:Oracle根据需要删除表中重复数据,例如:给表增加主键、唯一索引等情况方案:1. 删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING COUNT(id) > 1) AND ROWID NOT IN (SELECT MIN(ROWID) FROM 表 GROUP BY id HAVING COUNT(*) >

2021-03-30 18:02:48 476

原创 HBuilderX运行微信小程序启动失败

在网上下载的uniapp项目直接微信小程序运行有可能出现问题,因为有的项目里面的微信小程序AppID不为空在网上下载类似的多端项目,需要针对性的对manifest.json文件首先做修改;比如,需要运行微信小程序里面的appid修改成自己的微信的,或者清空,不能使用别人的或者错误的,那样你的小程序开发工具会出现打不开启动不了的情况。另外,附上DCLOUD的manifest.json文档详细说明{ "id": "H512345", //必填 .

2021-02-26 11:28:05 2401

原创 《这是知识点》之上传POST可绕过Java过滤器

项目场景:提示:公司有个项目做安全测评时发现了一个注入问题。系统设置了全局的XSS过滤器,在其他功能点上生效了,但在一个发布功能没有被过滤,后续排查发现安全测评走的是上传包注入方式,故记录此次问题问题描述:问题功能模块的作用是一个添加相关参数并上传附件的点,问题出在添加的参数未被全局XSS过滤器生效 原因分析:基于Tomcat和Spring MVC的底层代码分析问题原因常用的请求分文三种,GET型请求,普通POST型请求和上传POST型请求。本文的普通型POST请求指的是除上传POS

2021-01-30 15:42:20 442

原创 javax.naming.OperationNotSupportedException: Context is read only

场景:最近帮忙升级Tomcat版本时发现日志有这个异常:javax.naming.OperationNotSupportedException: Context is read only原因:容器必须确保应用程序组件实例仅具有对其命名上下文的读访问权。因此,修改环境命名上下文及其子上下文的javax.naming.Context接口的所有方法都会抛出该异常The container must ensure that the application component instances

2020-12-11 10:46:05 2436

原创 idea报Can‘t use Subversion command line client: svn

场景:两种场景:1、window系统2、Mac系统最近给Mac系统升级的到macOS11后发现的idea问题,故给这种情况简单写一下分析:Windows系统出现这样的错误:Can’t use Subversion command line client: svnProbably the path to Subversion executable is wrong. Fix it.1、在安装的TortoiseSVN工具时,本身是带有command-line功能的如图(图片来源于网络),但没

2020-11-18 14:47:13 1689

原创 《伸手系列》之分布式ID生成解决方案

一、为什么要用分布式ID?1. 什么情况下我们需要ID生成器数据库水平拆分的情况下,主键由于需要作为业务标识使用,需要唯一。业务编号需要暴露给用户,但是又不想被用户猜到需要被隐藏的业务编号业务编号需要体现业务信息,比如订单分类订单渠道等等拿MySQL数据库举个栗子:在我们业务数据量不大的时候,单库单表完全可以支撑现有业务,数据再大一点搞个MySQL主从同步读写分离也能对付。但随着数据日渐增长,主从同步也扛不住了,就需要对数据库进行分库分表,但分库分表后需要有一个唯一ID来标识一条数据,数据

2020-10-24 13:21:00 1257 4

原创 idea报Caused by: java.rmi.RemoteException: Cannot start maven service

项目场景:有时候会遇到idea导入maven工程出现标题的错误,以及异常信息是无法连接、连接超时等问题,甚至会出现修改pom文件卡死等情况原因分析:出现以上问题的原因有很多种,大部分情况的原因有以下几点:hosts文件的localhost的指向问题idea配置的maven版本以及相应JDK版本问题idea配置maven的相关参数问题其他问题解决方案:hosts 文件内容去掉 :: 1 ,如果没有localhost的话加上 127.0.0.1 localhostide

2020-10-20 19:39:49 2404 2

原创 jenkins 2.2.X版本关闭跨站请求伪造保护

场景:根据官网描述,Jenkins版本自2.204.6以来的重大变更有:删除禁用 CSRF 保护的功能,从而会遇到403问题解决方案:因为集成服务都是在内网操作,为删繁就简,考虑关闭 CSRF 保护功能,经过实践在Jenkins启动前加入相关取消保护的参数配置后启动Jenkins,即可关闭CSRF,配置内容如下:-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true也可以直接修改jen

2020-10-20 19:27:24 1373 1

原创 《伸手系列》之arm架构服务器安装kubernetes

前端时间买了两台华为云服务器没有用,最近看了一下发现是arm架构的,刚好没有在arm上装过k8s,特意装一下顺便记录一下一、环境准备硬件参数操作系统和安装要求以上是华为云服务器的情况,直接官网搬的信息Docker安装注意:采用静态包而非yum install的方式,是因为默认yum源的Docker版本过旧,容易出错且出现问题难以定位。进入Docker官方下载地址,查看Docker静态安装包列表。下载地址:https://download.docker.com/linux/.

2020-09-19 12:36:08 2794

原创 《伸手系列》之CXF调用webService接口的两种方式,支持http和https

最近发现一个旧项目的调用webservice接口不支持HTTPS,故支持一下,顺便分享一波目前一般做这种通用的接口调用,对于HTTPS的接口一般都是忽略验证,直接跳过;本文基于WSDL的webservice接口地址开发具体两步:1、跳过https的验证private static void trustAllHosts() { TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {.

2020-08-30 14:25:53 1536 1

原创 RSA之基于hutool的快速实现

刚刚临时帮同事写个rsa加密的工具包,基于hutool的快速实现,随手给需要的小朋友,非依赖hutool的请看我另外的文章,RSA加密算法Java应用解析-目前地球上最有影响力的加密算法RSA工具包2020年08月02日21:06:42 关于RSA就不多说了,直接上干货一、首先获取公私钥// 第一次使用时获取,获取后保存公私钥,不要重复获取Map<String, String> stringStringMap = RsaUtils.generateKeyPair();.

2020-08-02 21:20:21 4966 1

原创 《这是知识点》之ApplicationContextInitializer源码和简单使用

一、 ApplicationContextInitializer 介绍首先看下spring官方说明源码package org.springframework.context;/** * Callback interface for initializing a Spring {@link ConfigurableApplicationContext} * prior to being {@linkplain ConfigurableApplicationContext#refresh()

2020-07-30 19:18:20 622

原创 《探错笔记》之redis集群出现单节点宕机应用无法正常连接

项目中 redis集群出现单节点宕机,造成master迁移,但是发现应用无法正常连接redis问题场景Redis集群出现单节点异常造成master迁移时,底层基于Lettuce实现的应用程序无法正常连接Redis分析分析了代码,发现默认Lettuce是不会刷新拓扑io.lettuce.core.cluster.models.partitions.Partitions#slotCache,最终造成槽点查找节点依旧找到老的节点,自然访问不了了解决方案直接上代码,通过配置ClusterTopolo.

2020-06-29 15:01:37 1529 1

原创 IntelliJ IDEA 编译程序出现 非法字符 的 解决方法

IDEA出现:“异常 illegal character 200B” 、“’ u200b’”、“\65279”等错误时,一般都是出现直接复制别人代码的造成的。通常有两个解决办法修改idea的编译设置,增加参数在 Settings 中的 Build 下面的 Compiler 下。修改 Java Compiler在 Additional comman line parameters(附加参数)中添加参数 -encoding UTF8 即可。2.编码格式转换由于基本是编码格式造成,故可以先进行

2020-05-29 10:37:58 1868

原创 《探错笔记》之挂载NFS时提示:mount: 文件系统类型错误、选项错误、有坏超级块

记一次同事服务器共享磁盘挂载不上报错的问题linux系统进行磁盘挂载时,报错显示:# mount 172.19.4.12:/data/nfs /data/nfsmount: 文件系统类型错误、选项错误、172.19.4.12:/data 上有坏超级块、 缺少代码页或助手程序,或其他错误 (对某些文件系统(如 nfs、cifs) 您可能需要 ...

2020-04-23 15:37:10 7777

转载 GitHub传代码错误fatal:Authentication failed for'https://git……解决方法

上传代码到Git上面,有时候会遇到各种情况,有些时候是因为合并代码冲突,有些时候是因为修改了Git的登录密码需要重新认证。那么这里就来讲解错误提示fatal: Authentication failed for 'https://gitee.com/XXX/XXX.git/‘的解决方法。在一次上传代码的时候,不知道修改Git登录密码需要重新认证这个情况,然后提交代码的时候提示了上面的那个错误,当...

2020-03-25 21:20:57 13318

原创 《这是知识点》之Linux下分割文件并保留文件头

这是一个知识点方便快捷的给结构化数据文件分割大小并保留文件的表头,几十个G的结构化文件不仅阅读编辑麻烦,而且使用受限,因此高效的分割成小文件并保留头行1、分割文件在Linux下,切割和合并文件可以使用split和cat命令来实现。在Windows下,安装Git Bash也可以使用split和cat命令。分割文件的命令是split,通过输入split --help可以查询帮助信息。假设...

2020-03-25 20:14:39 557

原创 《探错笔记》之Springboot集成ES报org.elasticsearch.client.transport.NoNodeAvailableException异常

问题目前出现以下异常org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available的大部分原因都是因为springboot直接使用 <dependency> <groupId>org.spring...

2020-03-20 13:39:38 3008

原创 Springboot修改内嵌Tomcat版本

最近Tomcat爆出高危漏洞,基本影响所有的Tomcat版本,故需要对springboot项目进行版本升级ps:一般不建议修改springboot内嵌版本,内嵌版本都是经过验证比较稳定的版本1、查询springboot内嵌的版本使用idea等工具可以直接通过pom文件查看下面parent里面的Tomcat版本<dependency> <groupId>o...

2020-02-29 20:34:40 2624 1

原创 Nacos跨服务器调用服务报错

利用gateway做springcloud微服务网关路由服务时出现报错情况,发现是和网关不在一个服务器的服务无法使用Nacos服务注册的IPNacos注册中心是: https://github.com/alibaba/nacos各个服务通过Nacos客户端将服务信息注册到Nacos上当Nacos服务注册的IP默认选择出问题时,可以通过查阅对应的客户端文档,来选择配置不同的网卡或者IP...

2020-02-26 12:30:31 3954

原创 《探错笔记》之docker远程访问CA认证登录失败

前言给已有docker环境做基于portainer的统一管理问题测试时在idea中配置docker,连接远程机器的2376安全端口,测试不通过,出现docker chanel disconnected before any data was received原因通过分析,发现是之前生成证书的时候,添加访问白名单时,只添加了0.0.0.0,没有添加服务器本身的外网IP,造成从而无法使用...

2020-01-20 23:16:24 1101

原创 《伸手系列》之Docker开启2376端口CA认证

前言众所周知,docker可以开启远程访问API,但是发现很多都是直接开启2375端口,未做安全配置,从而出现安全隐患,最近在将docker环境统一portainer管理时,发现有这种情况。本文讲解如何开启安全认证的方法,配置TLS保证API的安全。简单粗暴的开启远程访问1、开启方式编辑docker文件:/usr/lib/systemd/system/docker.servicevim ...

2020-01-20 23:14:23 1053 1

原创 《探错笔记》之docker版本升级造成容器无法启动

前言针对多个测试系统的各个服务器的docker环境做统一管理,发现有部分安装的docker版本太旧,故对docker进行版本升级问题内容Docker版本为1.13,,在对其版本升级到18之后,启动旧版本创建的容器时遇到这个错误:docker start 容器IDError response from daemon: Unknown runtime specified docker-run...

2020-01-20 11:07:29 677

转载 MyBatis Plus之like模糊查询中包含有特殊字符(_、\、%)

解决思路:自定义一个拦截器,当有模糊查询时,模糊查询的关键字中包含有上述特殊字符时,在该特殊字符前添加\进行转义处理。问题提出使用MyBatis中的模糊查询时,当查询关键字中包括有_、\、%时,查询关键字失效。问题分析当like中包含_时,查询仍为全部,即 like '%_%'查询出来的结果与like '%%'一致,并不能查询出实际字段中包含有_特殊字符的结果条目like中包括%时...

2019-11-30 21:51:03 9174 3

原创 Oracle创建视图权限不足的问题

当前用户创建所属表的视图1.1 以dba用户登录sqlplus / as sysdba1.2 赋予用户创建VIEW的权限grant create view to 用户当前用户创建其他用户的表视图2.1 以dba用户登录sqlplus / as sysdba2.2 赋予用户创建VIEW的权限grant create view to 用户2.3 授予查询表权限grant sel...

2019-11-30 21:29:06 329

原创 《探错笔记》之一个正则引发的血案:ReDOS

ReDoS(Regular expression Denial of Service) 正则表达式拒绝服务攻击。开发人员使用了正则表达式来对用户输入的数据进行有效性校验, 当编写校验的正则表达式存在缺陷或者不严谨时, 攻击者可以构造特殊的字符串来大量消耗服务器的系统资源,造成服务器的服务中断或停止。ReDoS 原理概述正则表达式也能造成拒绝服务?是的,当正则表达式写得不好时,就有可能...

2019-10-24 10:02:53 819

SpringCloud微服务架构培训.pptx

用于本公司的SpringCloud微服务架构培训的PPT,每一页都是自己做的,80多页,另外,培训的内容和备注都写的很多,需要的朋友们可以拿来就用,培训时PPT直接照着备注读就行,绝对的独一无二,CSDN那些下载大小小于5M的里面就是些简介,啥都没有,我基本都下载遍了找不到一个正经的所以才自己写的PPT

2019-08-14

notepad的PluginManager

notepad的PluginManager,7.5以上没有的下载后放入plugin文件夹下,支持32位的,64位的不支持

2018-06-04

zTree 3.5.14 API文档

zTree 3.5.14 API文档,zTree 3.5.14 API文档,CHM格式下载

2017-12-14

oracle数据库恢复工具ODU-Linux版

oracle数据库恢复工具,不会使用的请看我2017-10-11博客

2017-10-11

oracle数据库恢复工具ODU

用于oracle数据库数据恢复,不会使用的可以看我2017-10-11的博客文章,http://blog.csdn.net/qq_22260641

2017-10-11

FlashFXP+v5.x.破解完美版

FlashFXP+v5.x.x打开后找到安装目录的exe文件然后生产注册码,输入到软件的激活页面

2017-05-16

Myeclipse10.7.1+破解文件

Myeclipse10.7.1+破解文件

2017-05-05

修改dmp版本号

修改dmp文件的版本号,主要用于导出的数据库版本和需要导入的数据库版本不一致

2017-05-02

长图截图工具

长图截图工具,网页图片,多图连接,动态截图,滑轮截图

2017-05-02

文件关联修复工具

文件关联修复工具

2017-05-02

W3School离线手册(2017.03.11版)

W3School离线手册(2017.03.11版)

2017-05-02

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

TA关注的人

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