自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 资源 (5)
  • 收藏
  • 关注

原创 Elasticsearch的使用方法

前沿:下面介绍elasticsearch的使用方法。在这里我会分节介绍elasticsearch的使用方式,以及基本的知识点。一,Elasticsearch的安装。 https://blog.csdn.net/qq_38669394/article/details/80268778二,Head插件的安装。 ...

2019-02-01 16:26:54 281 1

原创 Java 集合 固定大小 与 固定时间的 设计与实现

业务场景:当我们需要在系统中保存一些数据,而这些数据只需要最新的三十分钟的数据或者最近的300条的数据,那么我们就需要添加最新的数据,删除旧的数据。1. 首先设置一个全局的缓存类,来缓存我们需要的保存的对象package com.pats.publish.analysis;import java.util.List;import java.util.concurrent.Concu...

2019-01-18 14:23:55 1053

原创 java 实现移动 波动率 的设计与实现

1.首先,我们需要知道波动率是什么?在数学定义上波动率就是标准,标准差就是方差开根号,我们先看一下方差计算公式:其中x为这组数据的平均数,下面我们需要对方差进行推导:图 2.图3.标准差 :图4.归一化处理:推导过程:我们先不管前面的1/n,对里面展开:x为平均数,第4步括号1里面为X1到Xn平方的和,我们对后面的式子乘以n再除以n,X1+X2+...+...

2018-12-07 14:40:45 1752 4

原创 springboot 与shiro权限框架整合最新版

1.首先需要一个完整的springboot的项目,搭建过程可以参考我的另一篇博客:地址:https://blog.csdn.net/qq_38669394/article/details/84232976 2先看一下我的项目目录,主要涉及到两个类:ShiroConfig 是shiro的配置类,CustomRealm 进行权限控制3.项目亲测没有任何问题,觉得有用的小伙伴可以给个关注...

2018-11-21 18:51:51 571 3

原创 关于 jdk1.8 时间处理的方法(实用)

 下面是个人总结的关于日期时间处理的方法:package avg.position.zhangdi;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.Duration;import java.time.Instant;import java.time.LocalDa...

2018-08-08 11:10:18 3004

原创 Elasticsearch(一) 5.4.1的安装配置

将文件上传到服务器1.解压:tar xzvf elasticsearch-5.4.1.tar.gz cd elasticsearch-5.4.12.启动:./bin/elasticsearch3.不能以root用户启动,创建新用户:创建用户:useradd elastic添加密码:passwd elastic4.对用户授权:chown -R elastic...

2018-05-10 15:57:15 650 1

原创 xxl-job分布式任务调度的初步使用

xxl-job是 许雪里 同学开发的一个轻量级分布式任务调度框架。在这里开个玩笑,许雪里同学是个man(哈哈哈哈)!xxl-job的介绍和学习地址:https://www.cnblogs.com/xuxueli/p/5021979.html ...

2018-05-10 14:33:10 9228 5

原创 HashMap 原理解析

首先:说明HashMap是怎样去存储数据的。我们都知道是以‘键值对’的形式存在的。无序,不可重复。那么在存储的时候具体做了什么呢?1.HashMap做了什么?当集合要添加新的元素时,先调用这个元素的hashCode方法,就能定位到它应该放置的存储位置。如果这个位置上没有元素,它就可以直接存储在这个位置上,不用再进行任何比较了;如果这个位置上已经有元素了,就调用它的equals方法与新元素进行比较,...

2018-05-09 18:23:28 194

原创 VirtualBox配置centos7静态ip(详解)

  VirtualBox安装centos7配置静态ip地址可以本机访问,可以联网。在开始之前先说一下,不知道为什么,我在网上百度的大多数是不能用的,或者只能主机访问,或者只能联网。我的配置文件为ifcfg-enp0s3话不多说:上图1.安装完centos7之后进入 2.选择设置 --->网络如下图可以看到有网卡1,2,3,4网卡1默认是勾选的我们再添加网卡2勾...

2018-04-23 16:49:51 25703 21

原创 java基础-多线程

1.java 多线程实现的方式。 1.实现 Runnable接口。 2.继承Thread类。

2020-11-11 16:20:03 257

原创 揭秘JVM-2.1.java执行引擎工作原理——真实的机器调用

java执行引擎工作原理1.JVM作为一款虚拟机,必然涉及计算机核心的三大功能。1,方法调用:方法作为程序组成的基本单元,作为原子指令的基本封装,计算机必须能够支持方法的调用。同样,java语言的原子指令是字节码,java方法是对字节码的封装,因此JVM必须支持对java方法的调用。2,取指:这里的“取指”是指取出指令。方法是对原子指令的封装,计算机进入方法后,最终需要逐条取出这些指令并逐条执行,java方法...

2020-10-21 11:18:35 317

原创 揭秘JVM-1.java虚拟机简介

java虚拟机初步简介前言: 我因为自己学习java的东西越来越多,很多东西只得皮毛而不得窥其门道,伴随知识的增长,这种现象让我越来越痛苦,为不知道java对象在JVM内部如何存在而痛苦,为子类到底有没有继承父类的私有属性而痛苦,为当子类重写父类方法时,到底如何选择正确的方法并执行而痛苦,带着这些疑问,我们来揭秘JVM神秘的面纱。1简介作为一名资深的java开发者。那么你一定知...

2020-10-16 13:50:15 286

原创 xshell官网免费版下载

1.发现很多小伙伴找不到xshell官网免费版的下载地址,自从xshell官网改版以后,确实比较不好找。但事实上,xshell官网有提供家庭个人免费版。第一步:打开官网点击xshell下载 进入下载地址:https://www.netsarang.com/zh/all-downloads/2.第二步,向下拉:看到下面蓝色框框里,家庭/学校免费版3.第三步,点击进入,填写邮件地址,就会在邮箱收到下载链接,即可下载成功...

2020-08-26 15:49:47 5098 1

原创 如何处理Get请求参数过长

1.项目中总会遇到一些get请求参数过长,导致访问失败的问题,首先,get请求参数过长,访问失败的原因不是http协议的限制,是浏览器与服务器的长度限制导致的。2.常见的浏览器get请求方式长度限制Http get方法提交的数据大小长度并没有限制,Http协议规范没有对URL长度进行限制。 目前说的get长度有限制,是特定的浏览器及服务器对它的限制。各种浏览器和服务器的最大处理能力如下:IE:对URL的最大限制为2083个字符,若超出这个数字,...

2020-08-26 15:03:21 19531

原创 JVM-4.类加载机制

1.本文来源:陈树义的博客园2.终于到了我最感兴趣的地方,解决了我很多疑惑。相信也是很多人感觉疑惑的知识点。当 Java 虚拟机将 Java 源码编译为字节码之后,虚拟机便可以将字节码读取进内存,从而进行解析、运行等整个过程,这个过程我们叫:Java 虚拟机的类加载机制。JVM 虚拟机执行 class 字节码的过程可以分为七个阶段:加载、验证、准备、解析、初始化、使用、卸载。在开始聊之前,先给大家看一道面试题。class Grandpa{ static {

2020-07-24 18:01:07 139

原创 JVM-3.内存结构

1.本文来源:陈树义的博客园看到这里,我相信大家对于一个 Java 源文件是如何变成字节码文件,以及字节码文件的含义已经非常清楚了。那么接下来就是让 Java 虚拟机运行字节码文件,从而得出我们最终想要的结果了。在这个过程中,Java 虚拟机会加载字节码文件,将其存入 Java 虚拟机的内存空间中,之后进行一系列的初始化动作,最后运行程序得出结果。那么字节码数据在 Java 虚拟机内存中是如何存放的 ?Java 虚拟机在为类实例或成员变量分配内存是如何分配的 ?要解答上面这些问题,我们首先需要了解一

2020-07-24 17:27:21 120

原创 JVM-2.字节码文件结构

本文来源:陈树义的博客园温馨提示:此篇文章长达两万字,图片50多张,内容非常多,建议收藏后再看。前面我们说到 Java 虚拟机使用字节码实现了跨平台的愿景,无论什么系统,我们都可以使用 Java 虚拟机解释执行字节码文件。但其实字节码是有一套规范的,而规定字节码格式的就是《Java 虚拟机规范》。《Java 虚拟机规范》规定了 Java 虚拟机结构、Class 类文件结构、字节码指令等内容。其中类文件结构是有必要了解的一个内容。字节码文件结构是一组以 8 位字节为基础的二进制流,各数据项目严格按

2020-07-24 17:10:52 151

原创 JVM-1.源代码到机器码

本文来源:陈树义的博客园1.无论什么语言写的代码,其到最后都是通过机器码运行的,无一例外。下面要说的就是源代码到机器码经历了什么?如下图所示,编译器可以分为:前端编译器、JIT 编译器和AOT编译器。前端编译器:源代码到字节码之前我们说到:对于 Java 虚拟机来说,其实际输入的是字节码文件,而不是 Java 文件。那么对于 Java 语言而言,其实怎么将 Java 代码转化成字节码文件的呢?我们知道在 JDK 的安装目录里有一个 javac 工具,就是它将 Java 代码翻译成字.

2020-07-24 16:02:34 478

原创 关于继承的深度思考

1.先看一下继承的基本定义:继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。特征:1.Java 中通过 extends 关键字可以申明一个类是从另外一个类继承而来的。2.子类拥有父类非 private 的属性、方法。3.子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。4.子类可以用自己的方式实现父类的方法。(方法的重写)5.Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父.

2020-07-16 19:24:25 363

原创 java-基础-构造函数

1.最近在看反射的东西,通过Class对象的构造方法,去创建对象java对象package com.newland.draw.reflect;public class Person { public Person() { System.out.println("无参"); } public Person(String name) { System.out.println(name); this.name = name; } public Person(int

2020-07-13 17:25:32 268

原创 设计模式-8.代理模式

1.代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。用户可以在代理对象中操作原对象。2.代理模式的一般应用:提供了对目标对象的间接访问方式,即通过代理访问目标对象。如此便于在目标实现的基础上增加额外的功能操作,前拦截,后拦截等,以满足自身的业务需求。3.代理模式分为静态代理和动态代理 现在用一个小需求展示:给所有方法添加日志打印功能 打印请求参数。public class Calculator { //加 public int add(int a, int b.

2020-07-07 19:38:05 200

原创 设计模式-7.装饰者模式

1.装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。2.作用:动态地给一个对象添加一些额外的职责,装饰者提供了比继承更有弹性的替代方案。3.我觉得我写的不会比这个更好了:https://www.runoob.com/design-pattern/decorator-pattern.html

2020-06-29 18:17:20 307

原创 基于过滤器 实现长链接转短链接

1.关于springboot中过滤器的实现已经介绍过了。地址:https://blog.csdn.net/qq_38669394/article/details/1069267392.现在介绍一下 基于过滤器实现长连接转 短链接需求:公司最近有个需求,需要做一个分享的链接,由于需要记载分享人等信息,分享的链接就有点过长,需要采用短链接分享。长链接:https://*****/starposmall/pages/coupon/couponCenter?couponId=***2020061011.

2020-06-23 17:47:08 282

原创 springboot基于过滤器 实现用户权限控制

springboot 的过滤器实现主要有两个类1.过滤器注册类package com.newland.common.autoconfigure;import com.newland.common.filter.SessionFilter;import org.springframework.boot.web.servlet.FilterRegistrationBean;import org.springframework.context.annotation.Bean;import o

2020-06-23 17:09:13 3540

原创 页面请求加载框,并屏蔽页面点击

1.最近项目的页面一直出现 重复点击的问题,因为时间原因,后台也没有做防止重复点击措施,就想着在页面控制吧,加了一个页面加载框,点击提交时,禁止点击页面。在网上找到的。具体效果如下2. 看一下网上素材的文件排版3,我就先贴出css 和 js两个css文件 global.css 是在线演示全局样式的css 在项目中可以不用引用。loading.css也要注意对项目的影响,因为是网上找到,可能有css冗余3.1 global.css@charset "UTF-8";ht..

2020-06-19 10:31:41 932

原创 设计模式-6.适配器模式

1. 定义:适配器模式的定义是,Convert the interface of a class into another interface clients expect,将某个类的接口转换为接口客户所需的类型。适配器模式解决的问题是,使得原本由于接口不兼容而不能一起工作、不能统一管理的那些类可以在一起工作、可以进行统一管理。将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器。个人觉得这些定义不太容易理解,但是我找到一句话,觉得更符合我对适配器模式的理

2020-06-16 12:17:11 139

原创 支付宝支付回调

1.支付宝回调地址设置在上一篇博客已经记录地址:https://blog.csdn.net/qq_38669394/article/details/1066714102.支付宝回调方法,最主要两点,一个是如何接受参数,另一个是验签 ,这里需要将支付宝回调的参数转为map @RequestMapping(value = "/alyPayNotify") public String alyPayNotify(HttpServletRequest request, HttpServletR

2020-06-10 19:13:08 7626

原创 H5调起支付宝支付

1.H5调起支付宝支付,我这里是的方法是H5通过访问后端接口,由后台生成一个隐藏的form表单,将form表单作为一个字符串返回给H5,H5将form表单渲染到页面上,通过提交form表单调起支付宝支付。form表单大致是这样的,这里我从别处找到<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.

2020-06-10 17:55:26 9942 1

原创 微信支付回调

1.微信支付回调地址的设置,在我上一篇H5调起微信支付中已经介绍过了。地址:https://blog.csdn.net/qq_38669394/article/details/1066377512.微信支付回调是本地服务提供接口,微信调用本地服务的接口,我们接收微信传过来的支付结果。3.注意事项,微信访问我们是以xml格式,这里我多微信传过来的xml格式转为map,然后进入service层进行处理xml转map工具类,后面我会给出来/** * 3-微信异步通知 (签约支付)

2020-06-10 16:02:16 2277

原创 H5调起微信支付

1.下面我说的是h5在小程序内部调取微信支付。微信支付的步骤:参考官方文档:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_12.1 查看h5调起微信支付所需参数:这些参数是由 后台请求微信 统一下单 API 获取的请求微信统一下单API:其中有个必填字段通知地址 notify_url 是 String(256) http://www.weixin.qq.com/wxpay/..

2020-06-09 21:19:30 2570

原创 书写mysql语句注意事项

如何写出高质量效率高的sql语句,看完这篇就懂了1.事实上这是我在uc浏览器刷到的,感觉写的很基础,很不错,拷过来记录一下。地址:https://mparticle.uc.cn/article.html?uc_param_str=frdnsnpfvecpntnwprdssskt&btifl=100&app=uc-iflow&title_type=1&wm_id=b8090fc3ae5b454d940d5fb4cb7c7832&wm_cid=357380658252

2020-06-08 19:28:23 560

原创 支付宝回调报错信息 ObjectIdentifier mismatch: 2.16.840.1.101.3.4.2.1

1.最近在做支付宝支付与微信支付,支付宝回调验签不过,发现一个问题 错误信息为ObjectIdentifier mismatch: 2.16.840.1.101.3.4.2.1项目中的sdk中的验签方法:rsaCheckV1(Map<String, String> params, String publicKey, String charset); 只有三个参数而网上给的都是四个参数的形式//计算得出通知验证结果booleanverify_result=...

2020-05-25 17:01:06 2277

原创 号段法-生成唯一标识

一.前言:在分布式高并发环境下,有些时候我们需要生成一些包含业务逻辑性的唯一标识,例如订单编号:可能由业务字符 +当前时间+唯一字符串 : ZFB:(支付宝)+20200505121212+000001,这个时候就我们需要保证在高并发情况下后六位数字不重复。二. 下面我列举几种高并发模式下生成唯一标识的方式:1.利用全球唯一的UUID生成唯一标识。优势是本地生成,不占用宽带,但是id字符串...

2020-05-05 18:39:01 1208 6

原创 Oracle数据库 增删改查 基础sql(适用初级入门学者)

1、创建一张测试表TEST_DEMO CREATE TABLE TEST_DEMO ( ID VARCHAR2(20) NOT NULL PRIMARY KEY, CODE VARCHAR2(20) , NAME VARCHAR(20), ADDRESS VARCHAR2(20) )2、创建序列,作为主键值CREATE SEQUE...

2020-03-12 10:20:38 472

原创 Spring boot 整合redies demo详细介绍

1、redis安装 windows: Redis安装包下载:https://github.com/MicrosoftArchive/redis/releases、 选择自己合适的版本 1)将安装包解压 例如:解压到E:/redis 2)打开cmd下到切换到E:/redis 指令: cd /dE:/redis 然后运行下面代码r...

2020-03-11 15:57:01 201

原创 设计模 式-5.观察者模式

一.基本概念:当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。二。介绍:意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。主要解决:一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。何...

2020-02-24 11:24:11 163

原创 设计模式-4.建造者模式

建造者模式:  建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。当构造方法参数过多时使用建造者模式。将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示,通俗的说就是:建造者模式就是如何一步步构建一个包含多个组成部件的对象,相同的构建过程可以创建不同的产品。1. 简单的构造模式UML类图:...

2020-01-19 15:13:06 160

原创 设计模式-3.策略模式

在讲策略模式之前,我们先看一个日常生活中的小例子:  现实生活中我们到商场买东西的时候,卖场往往根据不同的客户制定不同的报价策略,比如针对新客户不打折扣,针对老客户打9折,针对VIP客户打8折...  现在我们要做一个报价管理的模块,简要点就是要针对不同的客户,提供不同的折扣报价。如果是有你来做,你会怎么做?我们很有可能写出下面的代码:package strategy.exa...

2020-01-17 15:23:52 101

原创 设计模式-2.工厂模式

前言:什么是工厂模式?工厂模式就是将对象的创建交由工厂来实现,程序只管使用其中具体的方法即可。我们为什么要使用工厂模式?1.将对象的创建和对象的使用分开,降低耦合度,提供代码重复利用率;2.后期对于创建对象的修改成本小。虽然工厂模式有这么优势,但是并不是所有的场景都适用于工厂模式。我们总不能把所有的需要创建对象的地方都换成工厂模式吧?那就有点为了使用设计模式而使用工厂模式了。...

2020-01-16 19:17:02 141

原创 redis 实现分布式锁

这里介绍一下:1.从2.6.12版本后, 就可以使用set来获取锁, Lua 脚本来释放锁。setnx是老黄历了,set命令nx,xx等参数, 是为了实现 setnx 的功能。但是,这里还是介绍一下setnx方法实现分布式锁。2.setnx 方法原理使用setnx命令再redis上创建一个key,因为redis的key是不允许重复的,只要谁能够创建成功,谁就能获取锁,没有创建成功的...

2020-01-12 18:02:37 210

Git使用手册_v1.0.xlsx

Git的使用手册,帮助开发者更好地使用Git,需要的可以下载。

2019-06-20

centos7下安装reviewboard.docx

reviewboard 是一款代码审查工具,可以优化团队开发代码的质量。

2019-06-20

Hadoop-hdfs的安装

自己搭建大数据集群的步骤,hadoop-hdfs! 有问题可以关注我

2018-05-10

Elasticsearch5.4.1 安装配置 +Kibana

elasticsearch +Kibana的安装配置 elasticsearch 是存储数据,Kibana展示数据,获取数据可以使用beat或logstash

2018-05-10

ambari 搭建大数据平台

ambari 搭建分布式的大数据平台,可对大数据平台进行集群管理

2018-01-02

空空如也

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

TA关注的人

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