自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿尔法小师妹

纸上得来终觉浅,绝知此事要躬行

  • 博客(150)
  • 收藏
  • 关注

原创 JS中setInterval()和clearInterval()定时器使用详解及获取验证码倒计时实例

1.使用详解 setInterval()与clearInterval()是直属于windows对象的js函数。 setInterval()以间隔指定的毫秒数不停的执行指定的代码。使用方法:setInterval(code,millisec),两个参数都是必须的,第一 个参数为要调用的函数或要执行的代码串。第二个参数为周期性执行或调用 code 之间的时间间隔,以毫秒计。cle...

2019-08-27 10:01:29 1725

原创 互联网红利之道-流量变现

目录 流量从哪里来 有了流量之后怎样变现 互联网发展迅猛的今天,互联网平台涌现,不论是随着发展壮大至今的平台,还是在发展的路径中展现过光芒的平台,流量变现无疑是互联网红利的一个极其重要的红利通道。 有流量就是有用户量,有流量就有红利。 流量从哪里来来源于外部单个账户的上传作品吸引的点击量。...

2019-08-21 16:53:29 849

原创 html列表td的内容太长,多余的部分要用省略号显示,点击td可以显示全部内容

目录1.应用场景2.代码样例3.实现效果1.应用场景 在显示展示列表的时候,有时会出现展示列表的列内容太长而使展示列表不美观。为此问题,设计列表的过长内容用省略号显示,并且点击td内容,可以显示全部内容。2.代码样例css代码样例:.table thead tr th, .table tbody tr td { vertical-align: ...

2019-08-12 14:46:00 7440 2

原创 web页面传递参数到后台controller的@RequestParam 、@RequestBody、@ModelAttribute 的应用场合及区别联系

1.@RequestParam 1.1可以用在get请求,也可以用在post请求。用于基础类型参数的传递,不能传递对象Object. 1.2post请求,@RequestParam用来处理Content-Type: 为 application/x-www-form-urlencoded编码的内容,ajax的content-type默认为 application/x-www-form...

2019-07-30 11:38:07 826 1

原创 ajax嵌套ajax下载excel文件之问题解决

目录一、场景介绍二、设计过程三、借助第三方平台来下载文件四、不稳定性解决一、场景介绍按照模版导入excel文件,把符合规则的数据更新后,把异常数据导出excel,并记录导出原因。导入导出需要一键操作!!!二、设计过程 用ajax上传文件,ajax上传成功后,在ajax的success中嵌套ajax实现文件的下载。 前端代码如下:<div id=...

2019-07-24 19:47:19 909

原创 设计模式(六)装饰者模式

目录一、装饰者设计模式的应用场景二、定义三、UML图四、实现方式五、装饰者模式的优缺点六、装饰者模式在JDK与Spring中的应用实例一、装饰者设计模式的应用场景 装饰者设计模式应用在给一个对象动态的增加多个行为,不用修改原来行为,只是在原行为的基础上一层一层的叠加,并且行为以一定的顺序操作。这样满足开发-封闭的原则,实现灵活的对象属性匹配。二...

2019-07-17 16:01:56 143

原创 设计模式(五)观察者模式

目录一、观察者模式的应用场景二、定义三、UML图 四、实现方式五、观察者模式的优缺点一、观察者模式的应用场景 观察者模式应用在当一个对象改变的时候,会引起其他多个对象的改变;相当于消息发布者与消息监听者的一对多的依赖关系,观察者模式通过消息发布者抽象类与消息监听者抽象类的交互,实现松耦合,消息的监听者的数目可以动态变化,对象仅需要将自己的更新通知给...

2019-07-16 13:44:08 181

原创 设计模式(四)组合模式

目录一、组合模式应用在哪些场景中二、定义三、UML图四、实现方式五、组合模式的优缺点六、组合模式的实际应用场景例子一、组合模式应用在哪些场景中 需求中是整体与部分的层次结构时,而且需求是树形结构,整体与部分用户希望忽略组合对象和单个对象的不同,统一使用组合结构的所有对象时,考虑用组合模式。二、定义 将对象组合成树形结构以表示部分-整体的...

2019-07-15 10:51:28 174

原创 设计模式(三)策略模式

目录1.策略模式的应用场景2.UML图3.实现方式4.优缺点分析1.策略模式的应用场景 策略模式应用在if...else的判断条件或者是switch的判断条件,而在判断条件下的执行动作中各分支都有共同的属性。可以定义共同动作的接口,不同的实现类实现具体的行为,实现行为的封装,建立上下文实现行为的调用,只调用行为接口,不涉及具体接口的调用,在客户端通过初始化具体的...

2019-07-13 16:30:17 126

原创 @Value注解失效的原因分析

目录一、@Value的注意事项二、错误的方式三、正确的方式一、@Value的注意事项1.不能作用于静态变量(static);2.不能作用于常量(final);3.不能在非注册的类中使用(类需要被注册在spring上下文中,如用@Service,@RestController,@Component等);4.使用这个类时,只能通过依赖注入的方式,用new的方式是不会自动...

2019-07-13 10:36:44 6250 2

原创 设计模式(二)简单工厂模式、工厂模式、抽象工厂模式

目录1、简单工厂模式 1.1简单工厂模式的应用场景 1.2 UML图 1.3 实现方式 1.4 优缺点分析2.工厂模式 2.1 工厂模式的应用场景 2.2 UML图 2.3 定义 2.4 实现方式 2.5 优缺点分析3.抽象工厂模式 3.1抽象工厂模式的应用场景 3.2 UML图 ...

2019-07-10 10:51:57 161

原创 设计模式(一)单例模式(单件模式)

目录一、单例模式应用在哪些场景中二、定义三、UML图四、实现方式五、在JDK中实现的单例模式六、单例模式的优点一、单例模式应用在哪些场景中对一些共享的资源,例如:线程池、缓存、对话框、日志对象、注册表等只需要一个实例,这时需要用到单例模式。二、定义单例模式:确保一个类只有一个实例,类提供了对这个实例的全局访问点。三、UML图四、...

2019-07-08 17:31:05 363

原创 HashMap原理解析及源码解析

1.HashMap的结构 HashMap的结构框图如下: 如上图所示,HashMap是数组加链表的存储结构,存储的是键值对Entry<K,V>。横向以数组的结构存储,数组的长度一般为2的整数次幂,默认数组的初始值为1<<4,即16.怎样存储一个键值对Entry<K,V>?通过key值的hashcode值与上数组长度减1...

2019-06-27 15:58:49 210

原创 数据库连接超时问题

问题:com.alibaba.druid.pool.DruidDataSource - discard connectioncom.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failureThe last packet successfully received from the se...

2019-06-19 17:02:48 13051 1

原创 数据库锁和java锁介绍(表级锁/行级锁/页级锁/共享锁/独占锁/意向锁/记录锁/间隙锁/NK锁/乐观锁/悲观锁/公平锁/非公平锁/互斥锁/读写锁/可重入锁/自旋锁/分段锁/偏向锁/轻量级锁/重量级别

java的主要两种加锁机制synchronized 关键字java.util.concurrent.Lock (Lock是一个接口,ReentrantLock是该接口一个很常用的实现)这两种机制的底层原理存在一定的差别,synchronized 关键字通过一对字节码指令 monitorenter/monitorexit 实现, 这对指令被 JVM 规范所描述;java.util.conc...

2019-06-03 18:29:11 1561

原创 Redis可视化工具RedisInsight

下载地址:RedisInsight - The Best Redis GUIRedisInsight provides an intuitive and efficient graphical interface for Redis, allowing you to interact with your databases and manage your data.https://redis.com/redis-enterprise/redis-insight/#insight-form建立redis数据库

2024-04-23 15:35:33 343

原创 Redission分布式锁应用案例(生成业务单号)

redisson内部类包。

2024-04-23 14:32:52 227

原创 性能测试工具JMeter

一款工具,功能往往是很多的,细枝末节的地方也很多,实际的测试工作中,绝大多数场景会用到的也就是一些核心功能,根本不需要我们事无巨细的去掌握工具的所有功能。所以本文将用带价最小的方式讲解如何快速上手使用jmeter来进行压测。JMeter,一款接口测试工具,是Java程序,需要JDK环境,建议使用JDK8或者JDK11。

2024-04-10 11:03:46 582

原创 win10 下,idea 无法在Terminal 中使用mvn 命令

3.添加M2_HOME,说是有些工程无法识别MAVEN_HOME路径(因为Maven是向下兼容的,有些工程是早期开发的,更高版本的Maven创建的Maven工程M2_HOME与MAVEN_HOME均可识别,但是旧版本的Maven能够识别M2_HOME,但是无法识别MAVEN_HOME路径)试了如上方式,很多次,没用。最后修改后重启电脑,打开idea,成功解决。可见,以上方式中说的重启idea(修改cmd特性)不靠谱,而是应该重启电脑。2.修改cmd 命令,关闭最新特性,启用旧特性,重启idea。

2023-06-07 18:35:48 1452 2

原创 SAXParseException/SAXParseException/XRRuntimeException报错解决

对实体 "I" 的引用必须以 ';

2023-05-12 14:33:08 1658 1

原创 Sourcetree安装详细步骤

Sourcetree安装

2022-12-15 15:36:56 3033

原创 Xstream报文解析与组装

Xstream报文解析与组装1.maven引入2.对象与XML互相转化工具3.http请求的xml报文转化4.Xstream相关的官方文档地址

2022-07-22 13:08:04 933

原创 mysql 一条数据占用的空间

举例子,请问如下表,存储一条数据,占用的数据库空间是多少?CREATE TABLE `payment_common_info` ( `id` bigint(20) NOT NULL COMMENT 'id', `request_id` varchar(50) NOT NULL COMMENT '请求id', `source` tinyint(2) NOT NULL COMMENT '系统来源 1:DADA', `business_no` varchar(20) NOT NULL ..

2022-04-25 11:44:27 7515

原创 docker卸载指令

## 1)进入docker的安装目录cd /usr/local/bin/## 2)删除与docker相关的文件夹sudo rm -rf docker*sudo rm -rf com.docker.*sudo rm -rf hub-tool*sudo rm -rf kube*sudo rm -rf vpnkit*完成!

2022-03-24 20:39:22 1955

原创 mac的launchpad无权限卸载软件,应用程序里可以卸载软件的解决办法

不知道什么时候开始,直接在 “应用程序” 里删掉后,启动台居然不能删除了……10.13和10.14后,无论是按住 Option,还是按住 Control + Option + Command,还是把图标拖进垃圾桶,都无济于事被清理的 App 带着禁止图标长期驻留在我的启动台,看着烦人,而且点击图标还可以加载软件,造成卸载不了软件的困难怎么办?!查,解决,ask for help!方法如下:打开访达(Finder),点击最顶部菜单栏的“前往”-“前往文件夹”,接着输入“/private..

2022-03-24 20:34:56 956

原创 MAC怎样显示隐藏文件

苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写):显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool false或者显示Mac隐藏文件的命令:default

2021-12-14 11:15:43 3624

转载 分布式事务处理2pc和3pc

随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。在分布式一致性一文中主要介绍了分布式系统中存在的一致性问题。本文将简单介绍如何有效的解决分布式的一致性问题,其中包括什么是分布式事务,二阶段提交和三阶段提交。分布式一致性回顾在分布式系统中,为了保证数据的高可用,通常,我们会将数据保留多个副本(replica),这些副本会放置.

2021-11-23 17:39:42 92

转载 分布式事务处理2pc与3pc

随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。在分布式一致性一文中主要介绍了分布式系统中存在的一致性问题。本文将简单介绍如何有效的解决分布式的一致性问题,其中包括什么是分布式事务,二阶段提交和三阶段提交。分布式一致性回顾在分布式系统中,为了保证数据的高可用,通常,我们会将数据保留多个副本(replica),这些副本会放置.

2021-11-23 17:33:49 137

原创 动态代理源码实现

public interface Cat { public void say();}public interface Dog { public void sign();}public class ChinaCat implements Cat { @Override public void say(){ System.out.println("这是一只中国猫"); }}public class KejiDog impleme.

2021-10-08 19:24:08 92

原创 jvisualvm安装Visual GC、Tracer插件

一、打开地址visualvm新访问地址:https://visualvm.github.io/index.html二、复制对应jdk版本插件地址1.进入“Plugins”页签2.进入“Plugins Center”,选择对应JDK版本的地址3.更新jvisualvm的“设置”下载地址4.勾选安装插件,安装5.查看安装插件...

2021-09-08 15:16:53 191

原创 MAC 版配置jvisualvm,插件配置与指令配置,一键搞定

一、插件配置1.搜索visualvmLauncher插件,并 安装 重启。2.jvisualvm版本配置版本 路径 通过 指令 /usr/libexec/java_home -V 查看3.运行程序则jvisualvm自动跳出。二、指令配置1.查看虚拟机的路径查看指令/usr/libexec/java_home -V$ /usr/libexec/java_home -VMatching Java Virtual Machines (3): ...

2021-09-08 12:39:13 2652

原创 volatile不保证原子性及其解决办法

1.volatile不保证原子性既然它可以保证修改的值立即能更新到主存,其他线程也会捕捉到被修改后的值,那么为什么不能保证原子性呢?首先需要了解的是,Java中只有对基本类型变量的赋值和读取是原子操作,如i = 1的赋值操作,但是像j = i或者i++这样的操作都不是原子操作,因为他们都进行了多次原子操作,比如先读取i的值,再将i的值赋值给j,两个原子操作加起来就不是原子操作了。所以,如果一个变量被volatile修饰了,那么肯定可以保证每次读取这个变量值的时候得到的值是最新的,但是一旦需要对变量

2021-08-18 16:15:22 1729

转载 JMM与volatile的底层工作原理

在了解volatile之前,先认识一下JMM内存模型和并发编程的三大特性!1. JMM内存模型 Java内存模型(Java Memory Model简称JMM)是一种抽象的概念,并不真实存在,它描述的是一组规则或规范。 与JVM内存模型不同的是,JMM规定所有变量都存储在主内存,主内存是共享内存区域,所有的线程都可以访问。当线程有对这个变量有操作时,必须把这个变量从主内存复制一份到自己的工作空间中进行操作,操作完成后,再把变量写回主内存,不能直接操作主内存的变量。不同的线...

2021-08-18 15:26:50 102

原创 算法大集锦

1.说一下什么是二分法?使用二分法时需要注意什么?如何用代码实现?  二分法查找(Binary Search)也称折半查找,是指当每次查询时,将数据分为前后两部分,再用中值和待搜索的值进行比较,如果搜索的值大于中值,则使用同样的方式(二分法)向后搜索,反之则向前搜索,直到搜索结束为止。 二分法使用的时候需要注意:二分法只适用于有序的数据,也就是说,数据必须是从小到大,或是从大到小排序的。时间复杂度是O(logn)执行源码:@Servicepublic class TestService {

2021-08-17 19:01:29 101

原创 地图

1.中国地图网 http://m.onegreen.net/maps/m/china.htm 包括中国地图全图、中国地图地形版、中国地图旅游版、中国地图铁路版、中国地图公路版

2021-05-08 11:14:29 794

转载 redis持久化的几种方式

redis持久化的几种方式1、前言Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里

2021-02-07 19:07:37 144

原创 幂等性设计

1.概念 幂等性原本是数学上的概念,即使公式:f(x)=f(f(x)) 能够成立的数学性质。用在编程领域,则意为对同一个系统,使用同样的条件,一次请求和重复的多次请求对系统资源的影响是一致的。2.场景 2.1在一次发票申请传入接口的时候,两次发票申请的单号一样,接口不能接收两个同样的单据,为防止重复,需要设计幂等。 2.2在更新业务数据状态或者财务系统设计金额的时候更新操作在分布式系统中需要防止状态更新错误或者金额操作错误,例如重复累加或重复累减。3.幂等的设计方法 ...

2020-12-28 20:45:03 1020

转载 Markdown基本语法

Markdown是一种纯文本格式的标记语言。通过简单的标记语法,它可以使普通文本内容具有一定的格式。相比WYSIWYG编辑器优点:1、因为是纯文本,所以只要支持Markdown的地方都能获得一样的编辑效果,可以让作者摆脱排版的困扰,专心写作。2、操作简单。比如:WYSIWYG编辑时标记个标题,先选中内容,再点击导航栏的标题按钮,选择几级标题。要三个步骤。而Markdown只需要在标题内容前加#即可缺点:1、需要记一些语法(当然,是很简单。五分钟学会)。2、有些平台不支持Markdown编

2020-12-16 15:06:34 128

原创 找不到与以下网址对应的网页:http://localhost:8080/rest/index HTTP ERROR 404

1.首先出现这个问题的原因是资源访问的路径出了问题,导致 css文件,js文件并未加载出来2.查看页面控制台 3.ping 127.0.0.1 和ping 域名 显示都是通着的4.查看tomcat配置路径配置没有问题5.查看nginx配置server { listen 80; server_name a.b.c.com; add_header 'Access-Control-Allow-Origin' ...

2020-12-07 15:08:18 30987 4

转载 Bigdecimal的divideToIntegralValue与remainder与divideAndRemainder方法详解

在介绍这个方法之前,我要先说说 divideToIntegralValue和remainder方法:divideToIntegralValue**java.math.BigDecimal.divideToIntegralValue(BigDecimal divisor) **返回一个BigDecimal,其值是商数(这/除数)的整数部分四舍五入。让我们编译和运行上面的程序,这将产生以下结果:33.0remainder**java.math.BigDecimal.remainder(Bi.

2020-12-02 14:24:20 2229

空空如也

空空如也

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

TA关注的人

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