自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (6)
  • 收藏
  • 关注

原创 JDK1.8HashMap源码学习

此篇文章我们来学习一下HashMap的源码,这也是面试经常能问到的知识点,而之所以为什么面试会问到它,就是因为他的设计思想,是非常值得我们学习的,也是非常经典的。同时不同的JDK版本之间,HashMap源码也是不同的,此篇文章我们只是1.8的HashMap源码学习。实现声明,看此篇文章之前,你需要大概对HashCode有一个基本的概念,例如是一个数据加链表的结构,是通过hashCode判断数组...

2019-09-24 17:09:09 387

原创 visio调出对齐与粘附快捷键

visio调出对齐与粘附快捷键

2023-01-04 14:45:59 1257

原创 正向代理与反向代理

正向代理与反向代理说白了就是把你们都知道的东西给起了个名字正向代理:正向代理主要在客户端,我们可以用vpn来理解,我们的请求,都是通过代理服务器转发出去的,所以才能访问外国网站。反向代理:反向代理,主要在服务端,例如Ngnix,我们会把用户的请求发送给多个服务端中的一个...

2021-01-15 17:17:20 248

原创 菜单树状结构实现

工具类:package cn.cfae.bcbbs.modules.role.utils;import cn.cfae.bcbbs.common.utils.CfaeBeanUtils;import cn.cfae.bcbbs.modules.role.dao.entity.BcbbsAAuthorization;import cn.cfae.bcbbs.modules.role.web.vo.Menu;import cn.cfae.bcbbs.modules.role.web.vo.Met

2021-01-15 17:06:26 573

原创 Spring继承Shiro多Realm情况下导致只抛出AuthenticationException解决办法

1、添加ModularRealmAuthenticator的继承类:package cn.cfae.bcbbs.common.security.realms;import org.apache.shiro.authc.AuthenticationException;import org.apache.shiro.authc.AuthenticationInfo;import org.apache.shiro.authc.AuthenticationToken;import org.apach

2021-01-15 17:00:57 661 1

原创 ORACLE 误将表数据删除方案

1、建立一个快表将删除修改之前状态的数据找回到这个表中:CREATE TABLE QUICK_TABLE AS SELECT * FROM bcbbs_a_transfer_publicity AS OF TIMESTAMP sysdate-1/24 (一小时前的),减去的时间可以自己定。亲测可用 ...

2020-12-20 21:20:31 112

原创 java二进制、八进制、十六进制表示方式

int a =0b101 (二进制,0b开头)int a =0101 (八进制,0开头)int a =101 (十进制,正常表示)int a = 0x101 (十六进制,0x开头)

2020-10-28 18:48:41 744

原创 怎么把一个jar解压然后,重新压缩

命令:jar cvfM0 demo.jar *把文件名更换即可

2020-08-25 15:23:16 1231

原创 查看mysql执行日志

1、日志开启SET GLOBAL log_output = 'TABLE';SET GLOBAL general_log = 'ON';2、查询SELECT * from mysql.general_log ORDER BY event_time DESC;3、日志关闭SET GLOBAL log_output = 'TABLE';SET GLOBAL general_log = 'OFF';4、清空表(delete对于这个表,不允许使用,只能用truncate)truncat..

2020-08-25 09:36:40 695

原创 springboot 使用反射时spring注入及切面无效

原反射调用方式// jobClass 类全路径// jobMethod 调用方法Class c = Class.forName(jobClass);Constructor con = c.getConstructor();Object obj1 = con.newInstance();Method method = c.getMethod(jobMethod, GlobalMessage.class);Object o = method.invoke(obj1, globalMessage

2020-05-09 15:05:54 1350

原创 SpringBoot集成redis主从哨兵配置

application.yml配置spring: redis: timeout: 10000 password: 123456 sentinel: master: mymaster nodes: - 10.10.56.161:26379 - 10.10.56.161:27000 - 10.10...

2020-04-14 23:50:00 1084

原创 Linux安装redis并搭建主从,哨兵

下载redis选择你想要存放的目录,然后 下载 解压wget http://download.redis.io/releases/redis-4.0.6.tar.gztar -zxf redis-4.0.6.tar.gz解压完成后进入解压好的目录然后执行make对解压的Redis文件进行编译执行完成后进入src目录执行 make inst...

2020-04-14 23:47:10 728 1

原创 SpringBoot使用增量式部署

SpringBoot确实方便了我们很多,内置的tomcat,灵活的配置等等,但是,由于他使用jar包部署的话,也会达成一个很大的jar包,一旦上线,上传就特别耗时了,而且还有一个问题就是,如果生产环境同时有多人更新,也会造成冲突(虽然可能性很少),但是如果采取增量式部署,也会减少这个可能性。当然上述问题我们也可以使用war包方式,可是,我感觉那个外置的tomcat也很麻烦,还需要配置很多东西,...

2020-03-16 22:12:04 2551

原创 RAS加签实现类

import java.io.*;import java.security.KeyFactory;import java.security.PrivateKey;import java.security.Signature;import java.security.cert.CertificateFactory;import java.security.cert.X509Certifi...

2020-03-09 19:56:13 238

原创 SpringBoot启动脚本

#!/bin/bash#这里可替换为你自己的执行程序,其他代码无需更改export LANG=en_US.UTF-8APP_NAME=umf-wechat-coreSERVICE_DIR=/usr/mpsp/umf-wechat-coreSERVICE_JAR_NAME=umf-wechat-core-0.0.1-SNAPSHOT.jarSERVICE_SPRING_PROFILES...

2020-03-08 18:02:21 162

原创 linux服务器脚本启动 -bash: ./core.sh: /bin/bash^M: bad interpreter: No such file or directory 解决办法

格式问题输入sed -i "s/\r//" core.sh把名称替换 执行即可

2020-03-08 13:34:52 415

原创 简单而有趣的算法-洗牌算法

2020-03-05 21:22:49 327

原创 maven打包时跳过Junit测试

pom.xml文件 <properties> <java.version>1.8</java.version> <!--打包时跳过Junit测试--> <skipTests>true</skipTests> </properties>...

2020-03-04 19:52:59 626

原创 SpringBoot+mybatis+druid+log42实现打印sql日志

我的SpringBoot版本为: 2.1.10.RELEASE首先在pom文件里面添加jar包,添加了log42,druid,mysql的jar包 <!--log4j2--> <dependency> <groupId>org.springframework.boot</groupId&g...

2020-02-25 15:32:02 4907

原创 SpringBoot2集成Log4j2并实现日志脱敏

最近在搭建springCloud项目,正好这个废了我点时间,也就记录下来,防止下次使用,也为了方便别人首先是pom.xml配置:删除springBoot自己的logback,导入log4j2 <dependency> <groupId>org.springframework.boot</groupId> ...

2019-11-22 16:33:43 6281 1

原创 Uncaught RangeError: Maximum call stack size exceeded

先放异常信息咱也懵逼 为啥啥就报这个错了,由于我添加功能比较简单,所以也就只能在锁定位置寻找原因,很快,发现原因了。我是想获取value值,但是已经很久都没有写前端了,忘记了要添加value值,所以,直接就草率的放到了data里面,当我发现写错了,然后改正了之后,问题解决。好尴尬啊。...

2019-11-15 15:11:40 246

原创 微信小程序实现AES-128-ECB-UTF8-hex加密

最近写一个微信小程序的登陆,后端使用的是aes方式,具体模块是ECB,输出是hex,使用格式UTF-8首先先下一个加密工具集合:CryptoJShttps://github.com/brix/crypto-js然后将src里面的代码放进我们的项目里面然后在我们需要使用的js中,引入文件const CryptoJS = require('../../libs/crypt...

2019-11-14 16:48:22 1185 1

原创 DB2数据库使用C3P0连接数据库连接失败 Connections could not be acquired from the underlying database!

先放异常信息:org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; --- The error occurred in com/umpay/op...

2019-11-13 10:35:41 1025

原创 Redis学习之集群

Redis集群的搭建,我已经在前面文章介绍过了,这篇文章,就让我们来学习一下Redis的集群是如何实现的。Redis最开始的集群搭建是依靠ZK的,但是在 3.0 之后版本支持redis-cluster集群。Redis-Cluster采用无中心结构,即每个节点保存数据和整个集群状态,每个节点都和其他所有 节点连接。那么我们是如何知道,我们的数据保存在哪里的呢?这样的话,我们就需要了解另一...

2019-11-01 10:10:33 132

原创 redis学习之命令

官方redis命令参考地址:http://doc.redisfans.com/index.html此篇文章只记录常用的命令。key值操作keys value :查找所有符合给定模式pattern的keyexists key : 判断key名是否存在move key db : 移动数据key名到相应的redisexpire key seconds : 为给...

2019-10-30 17:38:42 116

原创 redis学习之数据类型

上面的文章,我们已经成功在本地搭建了redis以及集群,接下来让我们学习一下他的数据类型以及对数据的操作命令。如果你没有本地搭建,我推荐一个网站,是redis官方的测试平台。http://try.redis.io/我接下来为了方便,也会使用这个平台。redis的数据类型分为这么几种:String,hash,list,set以及zset(有序集合)StringString是red...

2019-10-30 16:00:25 100

原创 redis学习之windows搭建

最近面试才发现自己忽视和Redis的重要性,所以从头来开始好好学习一下redis。首先我们需要下载:下载地址下载解压后我们会得到这样一个结构:接下来,启动它: redis-server.exe这个时候我们已经吧服务端启动了。(此时为前端启动)然后我们再把客户端启动: redis-cli.exe -h 127.0.0.1 -p 6379注意不要把原来的服务端关闭...

2019-10-24 18:13:57 129

原创 线程启动时jvm运行时数据区都有什么会随之启动

程序计数器虚拟机栈本地方法栈程序计数器,不需要多考虑,很正常,因为我们需要知道我们线程走到那步了虚拟机栈,这个线程执行的内存,肯定是必须的啦那么本地方法栈,为什么回启动呢,我之前对本地方法栈的理解,就是本地方法栈就是一个执行本地方法的地方,也可以执行C++语句(确实不够深入哈)。经过深入理解了之后呢,是因为在sun的java的并发(多线程)的机制实现中,许多与操作系统的接触...

2019-10-23 14:41:21 114

原创 为什么要使用Spring

既然提起为什么要使用Spring,我们就要聊聊没有Spring之前,我们的项目开发都是什么样的。在没有Spring的时候,我们的对象,都是程序员通过手动new出来的,这样的开发,会导致一点就是,我们的对象之间的引用,非常混乱,这种混乱,臃肿的系统结构,当然受到了很多的质疑,所以,我们的spring之父Rod Johnson 就提出了一种思想,那就是将设计一种框架,将那就是Sping。他最...

2019-10-22 10:58:18 799

原创 java项目中如何使用mysql行锁

mysql中的行锁,分为两种:共享锁,排它锁;共享锁允许事物读一行记录,不允许任何线程对该行记录进行修改。排他锁允许当前事物删除或更新一行记录,其他线程不能操作该记录。共享锁:SELECT * FROM TABLE LOCK IN SHARE MODE;锁申请前提:当前没有线程对该结果集中的任何行使用排他锁,否则申请会阻塞。1. 使用共享锁线程可对其锁定记录进行读取,其他...

2019-10-21 16:03:30 1591

原创 Mysql数据库调优

mysql由于他的开源以及存储引擎的优点,已经收到了众多开发人员的喜爱,所以在面试过程中,mysql调优也是面试提问几率非常高的,这篇文章就让我们来聊聊mysql调优都有哪几种方式。1、存储引擎:首先,我们可以选择适合的存储引擎,例如比较重要的,需要支持事务的,我们可以使用innoDB,存储登陆日志之类的,我们可以使用ARCHIVE,如果单纯的只是读多或者写多的,我们可以使用myIsam...

2019-10-21 15:44:47 181

原创 TCP与UDP

TCP:是一种面向连接的,可靠的,基于字节流的传输层通信协议。首先,我们要知道,网络时不可靠的,超时,丢失等情况都很有可能发生,所以为了保证数据的完整性,正确性,TCP是优选的。那么TCP到底有什么优点,所以能保证我们的数据传输呢?TCP是面向连接的,每次连接都会经历三次握手四次挥手,保证连接可用。TCP的数据包是有序的,并且有着自己的应答机智,一旦有数据没收到响应,则采取重...

2019-10-17 15:25:42 213

原创 java线程的生命周期及创建方式

线程,一直都是非常基础且重要的知识点,因为,在多线程下,什么都可能发生。线程生命周期线程是一个动态执行到过程,从出生,到死亡。New(创建,初始化状态) Runnable(可运行/运行状态) Blocked(阻塞状态) Waiting(无时间限制的等待状态) Timed_Waiting(有时间限制的等待状态) Terminated(终止状态)线程创建1、继承Thr...

2019-10-17 14:45:52 139

原创 什么是Redis缓存穿透/雪崩/击穿

缓存穿透缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。解决办法:可以根据具体情况设置参数校验,或者添加token校验。使用BloomFilter(布隆过滤器),将数据库里面有的数据,都放进里面,不存在就返回就可以了。缓存雪崩缓存雪崩,是指在某一个时间段,...

2019-10-16 10:33:52 145

原创 微信小程序picket绑定数组对象

微信官方的picket只写了那些数组里面就是逐条信息的类型,但是没有里面绑定的是对象的类型,所以发布一个,希望有用的可以拿走单列表首先是js第一个是数据内容如此 productList: [ { id: '1', name: '全部产品' }, { id: '2', name...

2019-10-15 10:44:12 689

原创 几种设计模式的作用及实现

工厂工厂模式主要是为了解耦,A类想要调用B类,但是实例化B对象比较复杂,所以我们就把B对象的创建放到工厂里面统一管理。由于B对象的创建已经统一了起来,所以即使业务逻辑发生变化,我们也只需要修改工厂类,而不需要寻找每个创建B对象的地方去修改。例如,我们项目可能会使用多个数据库源,但是他们的JDBC配置是不同的,所以我们就可以使用工厂模式来统一,也减少了使用者出错的概率。使用场景:精确...

2019-10-14 17:39:41 593

原创 java反射获取对象初始化以及未初始化的方式

Class获取的四种方式以及是否初始化没有初始化的:Class class1 = xxxClass.class;Class class1 = xxxClassLoader.load("包类名");完成初始化的Class calss1 = instanceObj.getClass();Class class1 = Class.forName("包类名");...

2019-10-09 23:04:14 749

原创 排序算法

冒泡排序最基本的排序算法,依次比较相邻节点大小,比我大(或者小),则交换位置。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。先放代码:/** * 冒泡排序(升序) * @param arr */ public static void gu...

2019-10-09 09:53:28 146

原创 mysql存储引擎

什么是存储引擎百度百科:MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。解释一下,就是数据存在数据库中不同的格式和方法,数据库中的表也有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称...

2019-10-07 20:29:56 165

原创 聊聊JVM吧

我们为什么要学习JVM呢,首先,面试会问!!!其次,当程序触发内存溢出等异常的时候,我们通过异常来判断异常产生原因,然后就是我们可以来优化我们的性能,避免垃圾代码的产生。JVM是干什么的众所周知,java是跨平台的语言,主打的就是一次编译,到处运行。而之所以能实现这个功能,就是因为JVM,那么JVM干什么了呢?JVM说白了就是从软件层面屏蔽了底层硬件,指令层面的细节。它将字节码文件解释...

2019-09-29 18:22:00 322

win service 2016 64位安装.net 3.5 cab源文件及安装脚本

win service 2016 64位安装.net 3.5 cab源文件及安装脚本

2022-01-19

Notepad++Json.zip

notepad++更新后,原json格式化插件失败,下载此文件解压后可重新格式化

2019-06-24

jfreechart所需jar包整合

jfreechart所需jar包整合 gnujaxp jcommon jfreechart

2019-01-15

Eclipse反编译插件

教程 jar包 都在里面 下载之后就可以按照教程使用了

2019-01-15

OracleToMysql转换器

可以将Oracle数据库与Mysql数据库之间的数据库表和数据进行转换的一个工具

2018-05-13

ant中文手册

目录: 1. Ant介绍... 2. Ant 安装... 3. 第一个Ant脚本... 4. 整合ant 5. Ant进阶... 6. Ant常用task. 7. 在ant中控制流程(if else ) 8. 实例分析: 9. 如何继续学习...

2018-04-10

空空如也

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

TA关注的人

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