自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王飞的博客

版权所有,转载请注明。

  • 博客(126)
  • 资源 (4)
  • 收藏
  • 关注

原创 巴纳姆效应

巴纳姆效应巴纳姆效应(Barnum effect)是指人很容易相信一个笼统的一般性的人格描述,并认为它特别适合自己并准确地揭示了自己的人格特点,即使内容空洞。传统星相学、占星术中的算命先生往往利用巴纳姆效应来自圆其说,引诱更多的人去找他算命。聪明的企业善于利用巴纳姆效应在广告上做文章。中华文化博大精深。...

2020-09-24 18:29:27 30

原创 墨菲定律与海恩法则

墨菲定律如果有两种或两种以上方式去做某事,选择一种方式将导致灾难,则必然有人会选择这种方式。墨菲定律强调一下几点:任何事情都没有表面看起来那么简单。所有事情的发展都会比你预计的时间长。会出错的事总会出错。如果你担心某种情况发生,那么它更有可能发生。海恩法则每一起严重事故的背后,必然有29词轻微事故和300起未遂先兆以及1000起事故隐患。...

2020-09-21 17:54:03 38

原创 maven install 报错Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test

运行mvn clean install 报错如下:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project rocketmq-client: There are test failures.解决方法:使用命令 mvn clean install -Dmaven.test.skip=true跳过test最终编译成功...

2020-11-02 20:42:09 48

原创 SQL中where与having的区别

吐槽:CSDN的文章质量真的是不敢恭维了,全是抄来抄去的,文章千篇一律,找不到自己想要的答案主要两点区别:作用时间where 结果返回之前进行约束having 结果返回之后进行过滤是否能够使用聚合函数where 条件里不能使用聚合函数,因为where约束会比聚合函数先执行having 条件里可以使用聚合函数,因为having过滤在聚合函数执行之后执行总结两句话就是:Where 是一个约束声明,使用Where约束来自数据库的数据,Where是在结果返回之前起作用的,Where.

2020-10-26 15:50:03 29

转载 @Transactional源码解析

经常用的事务注解,之前看过源码,今天总结一下源码的执行流程参考https://www.jianshu.com/p/ed1a47ef6b76xml文件中配置事务 <!--配置事务管理器--> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <!--控制住数据源--> .

2020-10-10 16:04:41 57

原创 单调栈

参考https://leetcode-cn.com/problems/largest-rectangle-in-histogram/solution/84-by-ikaruga/1. 什么是单调栈单调栈分为单调递增栈和单调递减栈单调递增栈即栈内元素保持单调递增的栈同理单调递减栈即栈内元素保持单调递减的栈操作规则(下面都以单调递增栈为例)如果新的元素比栈顶元素大,就入栈如果新的元素较小,那就一直把栈内元素弹出来,直到栈顶比新元素小加入这样一个规则之后,会有什么效果栈内的元素是递.

2020-10-07 17:45:13 25

原创 redis分布式锁的原理图

来源于慕课网geely老师后续补充解析

2020-10-05 15:49:04 28

原创 使用MyBatis编写SQL时<号报错的问题

使用MyBatis编写SQL时使用符号报错的问题一般我们写sql语句都会有一些条件判断语句,如下 select * from mmall_order where status = '1' and create_time <= '2020.10.05' order by create_time desc但是在使用MyBatis时在XML文件中这样写是要报错的,如下 <select id="selectOrderSta

2020-10-05 14:50:20 106 1

原创 JVM参数的设置以及在Windows和Linux下运行tomcat时的设置方法

JVM调优里最重要的就是设置JVM参数1. 主要设置的额参数如下所示2. 在Windows和Linux下启动tomcat时的设置方法2.1 Windows操作tomcat目录下的conf文件夹中的catalina.bat文件set JAVA_OPTS=‐server ‐Xms2048m ‐Xmx2048m ‐XX:MetaspaceSize=256m ‐XX:MaxMetaspaceSize=256m ‐XX:SurvivorRatio=82.2 Linux操作tomcat目录下的con

2020-10-03 19:38:47 60

原创 Tomcat的配置文件server.xml总结

tomcat的配置文件位于tomcat目录的conf文件夹下。/conf/server.xml下面主要讲解server.xml配置文件的内容和配置方法。源码如下,已去除注释<?xml version="1.0" encoding="UTF-8"?><Server port="8005" shutdown="SHUTDOWN"> <Listener className="org.apache.catalina.startup.VersionLoggerListen.

2020-10-03 18:16:56 28

原创 JDK自带JVM内存检测工具jconsole的使用

JDK自带了一个JVM内存检测工具jconsole。它可以实时监控JVM的堆内存、线程、类信息,以及JVM的配置参数。下面介绍其打开及使用方法。已配置了JAVA环境变量的情况下在windows系统下打开命令行输入jconsole回车就可以打开此程序打开之后界面如下图选择本地线程,选中我们要监控的Java进程,点击连接等待选择不安全的连接等待成功进入主界面,就可以查看jvm的内存、线程以及类信息了。内存信息示例:...

2020-10-03 15:38:59 84

原创 Java线程池

1. 线程池的好处降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁的消耗;提高响应速度:当任务到达时,任务可以不需要等到线程创建就能立即执行;提高线程的可管理性:线程是稀缺资源,如果无限创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一分配,调优和监控;2. 线程池的处理流程判断核心线程池是否已经满了,如果没有,就创建一个新的工作线程来执行任务(即使有其他空闲的基本线程能够执行新任务也会创建线程,等到需要执行的任务数大于线程池基本大小时就不再创建)。如果核心线程池

2020-10-02 23:23:08 13

原创 Volatile与Java并发编程的爱恨情仇

volatile作为一种保证内存可见性的收段,无论是在面试中,还是实际使用中,都经常出现。常见面试问题:知道volatile吗?它是怎么保证内存可见性的?它能保证原子性吗?要想彻底明白volatile,就要搞懂它的内存语义。Volatile的内存语义当写一个volatile修饰的变量时,JMM会将该线程对应的本地内存中的变量值刷新到主内存中;当读一个volatile修饰的变量时,JMM会把该线程对应的本地内存置为无效,线程接下来将从主内存中读取变量;内存语义的实现为了实现volatil

2020-10-02 20:54:15 50

原创 TCP与UDP的区别

TCP面向连接,可靠性高,UDP基于非链接,可靠性低。TCP建立连接实时性差,UDP不建立连接,实时性高。TCP开销大,UDP开销小。TCP在IP协议的基础上添加了序号机制,确认机制,超时重传机制,保证传输可靠,不会丢包。UDP会丢包。TCP一对一,点到点。UDP可以一对一,一对多,多对一,多对多。...

2020-09-30 21:51:18 18

原创 HTTP与HTTPS

http和https的区别:HTTP 的 URL 以 http:// 开头,而 HTTPS 的 URL 以 https:// 开头HTTP 是不安全的,而 HTTPS 是安全的TTP 标准端口是 80 ,而 HTTPS 的标准端口是 443在 OSI 网络模型中,HTTPS的加密是在传输层完成的,因为SSL是位于传输层的,TLS的前身是SSL,所以同理HTTP无需认证证书,而https需要认证证书todo HTTPS的连接过程...

2020-09-30 21:41:52 15

原创 POST与GET的区别

作为传输层的两大协议GET和POST方法都各有自己的特点下面就总结以下二者的不同点传送方式:get通过地址栏传输,post通过报文传输传送长度:get参数有长度限制(受限于url长度),而post无限制get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?“连接,多个请求数据间用”&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;po

2020-09-30 21:30:52 15

原创 Java反射源码解析

Java反射机制带给Java无线的想象空间,那么Java反射的底层是如何实现的?1. 先上栗子public class MyReflect { String message; public void hello(String msg) { this.message = msg; System.out.println("Hello Reflect" + " " + message); } public static void main.

2020-09-30 21:05:11 35

原创 数据库设计三大范式

参考https://www.cnblogs.com/xiaozengzeng/p/10720226.html大家经常提到数据库设计三大范式,今天来总结记录以下具体是哪三大范式1. 第一范式: 列不可再分1NF:原子性 字段不可再分,否则就不是关系数据库;数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组,记录等非原子数据项。如果实体中的某个属性有多个值时,必须拆分为不同的属性 。通俗理解即一个字段只存储一项信息。2. 第二范式:非主键字段依赖于主键第二范式(2NF)是在第一范式(.

2020-09-29 21:40:43 21

原创 HashTable源码与总结

作为最原始的线程安全的map,HashTable的实现原理有必要进行分析总结包含的方法API synchronized void clear() synchronized Object clone() boolean contains(Object value) synchronized boolean containsKey(Object key) synchronized boole.

2020-09-27 23:34:56 148

原创 缓存更新策略

面试问到缓存的更新策略,今天来总结一下参考作者:不止思考链接:https://www.jianshu.com/p/22c7e9ab5d15概述缓存更新策略是为了保证数据库和缓存的数据一致性。主要有三类更新策略:Cache AsideRead/Write ThroughWrite Behind1. Cache Aside(常用)应用在查询数据的时候,先从缓存Cache中读取数据,如果缓存中没有,则再从数据库中读取数据,得到数据库的数据之后,将这个数据也放到缓存Cache中。.

2020-09-27 10:04:22 29

原创 MySQL数据库中innodb引擎的B+Tree的底部到底时单向链表还是双向链表?

单向还是双向?说法不一!在网上搜索这类问题,得到的方案有两种,一种是单向,一种是双向。所以到底哪个是对的呢?今天就来彻底解密官方文档talk is cheap,show me the code真实情况页的概念Mysql的innodb是以页为存储单位的,每个B+Tree的叶子节点都是一个页的大小的倍数,默认一页的大小是16K页结构如下图所示也就是每一个页都包含两个页指针,一个是previous page指针,指向上一个页,一个是next page指针,指向下一个页。头部还有Page的类

2020-09-25 18:23:33 563 1

转载 数据库索引

https://blog.csdn.net/woshiluoye9/article/details/69665334

2020-09-21 10:54:18 8

转载 工厂模式学习笔记

参考https://blog.csdn.net/qq_34337272/article/details/804720711. 简单工厂很少用,先略过2. 工厂方法模式在工厂方法模式中针对不同的对象提供不同的工厂。也就是说 每个对象都有一个与之对应的工厂。通俗的讲就是一个工厂只生产一类产品。2.1 工厂方法模式角色分配1. 抽象工厂(Abstract Factory)角色: 任何工厂类都必须实现这个接口。2. 具体工厂(Concrete Factory)角色: 这是实现抽象工厂接口的具体工厂.

2020-08-29 23:49:27 27

原创 Java双重校验锁实现单例模式

为什么要用双重校验锁实现单例模式?单例实现有饿汉模式与懒汉模式,懒汉模式能够延迟加载,使用较多,但是懒汉模式在多线程下会出现问题,即有可能会产生多个实例。下面是懒汉模式实现的单例模式的代码public class SingleTon{ //静态实例变量 private static SingleTone instance; //无参构造函数 private SingleTon(){} //获取单例的公共方法 public static synchronized SingleTon getI

2020-08-28 22:53:58 88

转载 一文彻底搞定DNS面试题

很多次面试都问到了DNS解析的问题,回答的不是很好,今天专门总结一下参考了文章如果美国把根域名服务器封了,中国会从网络上消失吗?文章来源于微月人话 ,作者卫sir1、DNS是什么?百度百科的解释域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。说人话就是把域名映射为.

2020-08-26 13:18:45 306

原创 HttpServletResponse中添加cookie失败的原因

今天做项目,遇到添加cookie失败的问题找了一个小时的问题,发现问题在于参数设置的问题我请求的是localhost我的cookie放的domain是www.wf.com这两个地方不同导致cookie添加失败,更改为相同即解决问题。cookie设置三要素domain指定了请求路径中字符串,如上只要包含localhost的请求都会有此cookiepathcookie 放置路径,指定cookie放置的请求路径的目录httpOnly设置只能通过http请求得到,非浏览器无法获取

2020-08-21 17:57:42 201

原创 win10配置nginx代理两个tomcat

win10配置nginx代理两个tomcat1. 配置nginx的配置文件如下user www www;worker_processes auto;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65;

2020-08-21 15:42:41 47

原创 Cannot obtain primary key information from the database, generated objects may be incomplete

https://blog.csdn.net/babybabyup/article/details/84099469

2020-08-08 13:28:11 37

原创 MyBatis操作ORACLE数据库出现无响应,但是在数据库里执行语句是正常的

原因是数据库存在一个事务没有被提交,数据库一直等待该事务提交,造成无响应解决方法:先看一下数据库中未提交的事务select * from v$transaction;删除该行数据重新插入

2020-08-07 13:51:43 135

原创 get方法获取参数方式

https://blog.csdn.net/zyxwvuuvwxyz/article/details/80352712

2020-08-03 10:15:24 97

原创 SSM拦截器设置

https://blog.csdn.net/H_crab/article/details/90449174

2020-07-31 10:44:36 84

原创 war包部署tomcat下的webapps中的子目录中的方法

war包部署tomcat下的webapps中的子目录中的方法一般情况下部署war包方式部署到wepapps下的子目录中的方式一般情况下部署war包方式在一般情况下,我们部署服务器都会直接将war包拷贝到tomcat的 webapps 文件夹下,接着启动tomcat之后,tomcat会自动解压war包并运行。部署到wepapps下的子目录中的方式war包拷贝到webapps下会自动解压,但是拷贝到webapps的子目录下不会自动解压。那么我们要通过一些配置完成我们的目标。更改server.xml配

2020-07-27 09:41:33 436

原创 Nginx学习

Nginx的三要素:反向代理负载均衡动静分离Nginx反向代理1. 首先看一下正向代理所谓正向代理,就是在客户配置代理服务器,通过代理服务器进行互联网访问;2. 反向代理所谓反向代理,客户端不做任何配置,此时代理服务器和真实的服务器看作一个整体的服务器,客户端发请求到反向代理服务器,反向代理服务器向真实的服务器请求到数据后,返回给客户端,也就是说代理服务是在服务器端完成的。未完,待续。。。...

2020-07-18 15:11:52 63

原创 使用IntelliJ IDEA时向Github进行push时报错的解决方案

IEDA向Github进行push项目时经常报错 Push failed Invocation failed Server returned invalid Response. java.lang.RuntimeException: Invocation failed Server returned invalid Response. at org.jetbrains.git4idea.http.GitAskPassXmlRpcClient.askUsername(GitAs

2020-07-16 19:32:25 203

原创 Ubuntu下修改hosts文件中的域名映射

Ubuntu下修改hosts文件中的域名映射打开hosts文件ubuntu下的hosts文件在/etc下添加域名映射保存并关闭

2020-07-16 14:51:36 354

原创 ubuntu18使用终端登录阿里云服务器

ubuntu18使用终端连接阿里云服务器ubuntu可以使用ssh工具快捷远程连接到远程主机打开终端ctrl+alt+t终端里输入ssh root@xxx.xxx.xxx.xxx其中, xxx.xxx.xxx.xxx是阿里云控制台的公网IP地址Are you sure you want to continue connecting (yes/no)?输入yesroot@xxx.xxx.xxx.xxx’s password:输入登录阿里云主机的密码Welcome to Alibaba Cl

2020-07-16 11:10:38 165

原创 Nginx负载均衡

概念客户端发送请求到反向代理服务器,反向代理服务器讲请求分发到真实的服务器进行处理。未完待续。。

2020-07-15 23:17:04 36

原创 输入一个URL之后到浏览器显示页面期间发生了什么

输入一个URL之后到浏览器显示页面期间发生了什么笔者参加的很多场面试都有问到这个问题,有时候回答的不是很好,今天来总结一下参考了敖丙的文章https://mp.weixin.qq.com/s/I6BLwbIpfGEJnxjDcPXc1A1. HTTP1.1 URLURL称为统一资源定位符,也就是通过这个定位符我们找到网络中的资源,浏览器拿到这个资源进行解析。那么URL包括什么呢?看下图1.2 DNS解析举个例子,百度的服务器有自己的IP地址,但是IP地址一半都是****...****的

2020-07-05 11:00:39 92

原创 数组算法之“前缀和”

基于力扣算法题974. 和可被 K 整除的子数组基于https://leetcode-cn.com/problems/subarray-sums-divisible-by-k/solution/you-jian-qian-zhui-he-na-jiu-zai-ci-dai-ni-da-tong/总结1. 什么是前缀和前面的所有,再包括自己(数组 第 0 项 到 当前项 的 总和)如果用一个数组 preSum 表示:preSum[0]:数组A 第 0 项 到 第 0 项 的总和preSu.

2020-05-28 09:50:22 114

原创 自定义HTTP返回json类

自定义HTTP返回json类http请求返回包含状态码,消息以及数据本文介绍通过自定义类的方式,实现一个http返回类型1. 创建类Msg作为用来返回json的通用类类属性字段包含状态码,提示信息,用户要返回给浏览器的数据。 //状态码 private int code; //提示信息 private String msg; //用户要返回给浏览器的数据,采用map存储 private Map<String, Object> extend = n

2020-05-20 14:01:24 174

DS1302-STM32-测试可用.rar

此文件为DS1302时钟芯片驱动库,基于STM32F103,亲测可用。

2019-10-11

Java_API文档_中文详细版.rar

Java API文档中文版,下载即可使用,适合JAVA初学者进行学习。

2019-07-13

ST官方加密解密库.rar

ST官方加密库,可以实现DSA,AES,ARC4,ECC,HASH,RAND,TDES_DES加密解密,ST的亲儿子,转为STM32移植而生

2019-10-20

STM32F103C8T6_AES-128-CTR_base64密文解密.rar

STM32F10x移植ST官方库进行AES-128-CTR加密解密,KEIL5工程文件,包含stm32-cryp-lib库 集成base64编码解码,可以对base64编码的字符串实现解密 详细介绍请看博客https://blog.csdn.net/weixin_43155866/article/details/102650979

2019-10-20

空空如也

空空如也

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

TA关注的人 TA的粉丝

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