自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 SpringBoot中的统一异常处理器的实现

背景: 在和第三方对接的时候,其要求接口格式必须和文档要求的一致,并且错误格式也得和文档一致。正常响应很好处理,难点就在对异常情况下响应信息的封装了。springboot中可以使用ControllerAdvice和ExceptionHandler这两个注解来做全局异常,这种方式比较便捷,但是也有一...

2020-04-26 21:05:01 63 0

原创 可靠消息最终一致性-分布式事务解决方案

可靠消息最终一致性-分布式事务解决方案

2019-10-10 21:00:12 145 0

原创 对 WebSocket 和 HTTP 关系的认识

1、首先Websocket和http都是应用层协议,网络协议分层结构如下所示: 2、WebSocket和HTTP都是基于TCP协议的两个不同的协议,其中WebSocket依赖于HTTP连接。 QA: a、WebSocket依赖于HTTP连接,那么它如何从连接的HTTP协议转化为WebSock...

2019-09-08 22:39:05 96 0

原创 Linux(Centos)安装nexus实现maven私服

想搭建一个maven私服,把工具类传上去共享,在这里记录下搭建的步骤。 下载nexus的安装包,官网对国内非常不友好,不是拒绝就是异常的慢,这里准备的nexus3.13.0-01的安装包供大家使用; nexus3.13.0-01 ...

2019-09-08 22:17:19 35 0

原创 Websocket消息推送集群搭建1 之集群架构图

背景: 最近公司需要做一个消息推送功能,为了保证可靠性,决定做集群。 难点: 1、SpringCloud中的第一代网关zuul不支持ws协议,会将ws协议降级为http协议或者轮询; 2、ws协议下的会话状态持有体session无法进行持久化,因为ws协议下的会话是有状态的,无法进行序列化; 架构...

2019-09-07 21:42:05 91 0

原创 elk使用爬坑记录 4 之 Elasticsearch中ik分词器的使用

ik分词器对中文支持较好的开源分词器,开源地址为https://github.com/medcl/elasticsearch-analysis-ik 使用注意事项: ik分词器的版本必须和elasticsearch的版本对应; 官网上7.x的源码下来后,编译出来的版本仍然是7.0的,需要手动在下...

2019-09-07 21:22:02 68 0

原创 elk使用爬坑记录 3 之 SpringBoot 中 Elasticsearch 相关API的使用

首先需要再application.properties中配置elasticsearch的相关属性: #-----------------elasticsearch相关的配置------------------ es.host=192.168.100.102 es.port=9200 es.sch...

2019-09-07 21:02:28 79 0

原创 elk使用爬坑记录 2 之 SpringBoot 集成 Elasticsearch

目前最新版的ElasticSearch为7.3.1,SpringBoot2.x版本还没有即时的更新,其父级依赖还是<elasticsearch.version>5.6.10</elasticsearch.version>,因此需要再子项目中覆盖父级别的依赖,指定子项目的正确...

2019-09-07 20:43:53 119 0

原创 elk使用爬坑记录 1 之 Elasticsearch和Kibana的安装

背景: 最近公司要做用户行为日志的可视化展示,因为Elasticsearch对数据的可视化展示提供了初步支撑所以决定使用Elasticsearch。 个人理解: Elasticsearch相当于提供数据存储功能的应用系统,提送数据的存储【包含数据分片和存储】功能并对外开放接口/API; Kiba...

2019-09-07 17:55:29 82 0

原创 linux开启某个端口防火墙的命令

在linux服务器上安装服务后,可能因为端口未开放暂时不能访问,此时需要开放特定的端口,相关的命令如下所示: A、防火墙状态操控 查看防火墙的状态 systemctl status firewalld 开启防火墙 systemctl start firewalld 关闭防火墙 s...

2019-08-04 14:32:37 78 0

原创 不忘初心,有梦想的生活

最近做了好多事,在工作、感情、生活方方面面感触很深,可能是闲的。最终总结下来,一个人无论做什么自信都是非常重要的。 欲买桂花同载酒,终不似,少年游。 ...

2019-07-07 15:31:03 96 0

原创 悲观锁和乐观锁学习

最近线上数据库出现了慢查询的问题,因此研究下了下数据库锁相关的东西,参考的比较好的文章如下,方便后面查看。 最通俗易懂的乐观锁与悲观锁原理及实现 一分钟教你知道乐观锁和悲观锁的区别 乐观锁与悲观锁 不可重复读和幻读的区别 数据库四大特性和事务隔离级别 数据库中的共享锁和排他锁 MYSQL数据库死锁...

2019-06-02 20:55:07 49 0

原创 带权重的随机数算法的实现

在做一个银行的网页游戏的时候,涉及到一个随机抽奖的模块。具体的需求是:当用户的积分可以抽奖的时候,点击抽奖则消耗指定的积分随机抽取奖品,各种奖品的概率如下:笔记本(10%),手机(20%),充值卡(30%),积分(40%)。因为,奖品的概率是可以设置的,因此考虑Java容器中的TreeMap集合实...

2019-05-19 16:55:47 444 0

原创 自己对react中flux框架部分底层原理的理解

这是我在学习react框架时的个人理解,包含个人总结和案例中代码的分析,对于react中部分与内存分配相关的原理还是不是很懂: 1.个人总结: flux架构的理解: flux架构中数据是单向流动的; view[components]经过出发产生action,act...

2019-05-16 20:54:12 1042 0

原创 React和SpringBoot前后端分离开发模式下采用WebSocket实现单设备登录

首先介绍下,什么是单设备登录? 单设备登录可以理解为同一个应用某一时刻只允许单一用户使用处于登录状态。单设备登录可以类比QQ的踢出第二者登录模式,可以在一定的程度上保障账号的安全。 单设备登录的难点在哪? 单设备登录的难点在于如何主动、准确的推动消息到客户端。但是幸...

2019-05-16 20:53:58 11113 16

原创 Springboot拦截器无法注入redisTemplate操作工具类问题

最近在做微服务间用户权限打通的时候,由于当初设计的问题,用户的信息没有存在Redis中,而是由请求头携带的,因此需要在用户首次访问的时候缓存用户信息到Redis中,但是redisTemplate却无法注入到拦截其中,核心代码如下所示: SessionInterceptor.java packag...

2019-05-14 20:32:37 2045 0

转载 软件开发中会用到的图

转载 软件开发中会用到的图 阅读目录 背景 图为了解决什么问题 不同流程中适合运用的图 实际的运用 结语   一、背景   大家应该在从事软件开发领域工作时间有一段时间之后,就开始有画图的意识,不管是懵懂的学别人还是想更好的让其它人理解自己的一...

2019-04-14 20:55:23 121 0

转载 Spring Boot中使用@Async实现异步调用

参考文章: Spring Boot中使用@Async实现异步调用 Spring Boot使用@Async实现异步调用:自定义线程池 Spring Boot使用@Async实现异步调用:ThreadPoolTaskScheduler线程池的优雅关闭 Spring Boot使用@Async实现异步调用...

2019-03-24 11:54:11 66 0

原创 纯Java后台实现区分数据的新增、修改、删除操作

近期遇到一个问题,就是当 添加、修改、删除 三个业务,都写入controller(控制层)同一个方法时,该怎么区分呢?虽然前端可以加上操作类型,但是后台还得做遍历,效率不高而且比较麻烦。于是乎,我就想了一个方法,在这里跟大家分享一下。 原理: a、添加的数据一般uuid为空; b、修改的数据拥...

2019-03-23 22:00:35 931 1

原创 Docker的概念和相关属性

第一章 Docker的核心概念 1.1Docker镜像 Docker镜像类似于虚拟机镜像,可以将其理解为一个只读的模板。例如,一个镜像可以包含一个基本的操作系统【Ubuntu、Centos、Alpine、BusyBox】环境,里面仅安装了Jenkins应用程序,那么这个文件就可以被称为Jenki...

2019-02-28 23:07:16 149 1

原创 Docker学习笔记(二)基本软件的Docker安装【基本安装,可能不适用于生产环境】

通过Docker安装常用软件,包产Mysql、Redis等。。。。。。 Mysql安装 docker run --name mysql_server -e MYSQL_ROOT_PASSWORD=123 -d mysql:latest QA:http://www.hellojava.com/...

2019-02-24 22:34:32 128 0

原创 Docker学习笔记(一)什么是docker?

什么是Docker? 理解Docker首先需要理解Docker的三大核心概念。 1、镜像【Image】 Docker镜像类似于虚拟机镜像,可以将其理解为一个只读的模板。例如一个镜像中可以包含Mysql、JDK并进行了合理的配置。而这些配置和软件的下载则是通过Docker执行Dock...

2019-02-24 21:59:54 291 0

原创 利用github+hexo搭建个人博客并创建图床【带视频教程】

Git+hexo 搭建个人博客的步骤和要点 步骤: 1、 安装nodejs+git+tortoisegit 2、 注册github账号,并创建个人独立主页仓库,就是那个username.github.io仓库; 3、 安装和初始化hexo博客脚手架; 4、 去hexo选择适合自己的博客主题; 5、...

2019-02-17 21:08:21 552 0

原创 Apollo配置中心和SpringCloud中Zuul结合使用创建配置网关

当配置中心要求高可用的时候,集群是一种不错的解决办法。当配置中心进行集群的时候,Zuul就派上了用场。并且Apollo和SpringCloud中zuul结合非常的方便,此处只解释在结合网关中路由刷新的部分原理: 前提:在Apollo的Portal的某个项目下存在公共的路由配置命名空间。如下图: ...

2019-01-03 21:18:23 462 0

原创 Java中内存数据流的使用

内存流存在的意义: 当我们不需要持久化存储数据,而仅仅是需要进行数据中转的时候,就可以使用内存流。 内存流的使用场景: 1.代码中需要交换的数据,读写的数据,仅仅是代码之间需要交换,就没必要 内存 ==》 磁盘 磁盘 ==》内存 【可以在内存读写上提高了效率】 ...

2018-12-29 21:02:28 295 0

原创 springboot中使用@Value读取配置文件,通过静态变量实现非侵入式集中管理

在SpringBoot中读取XXX.properties等配置文件有许多方法,常见的方法有:@ConfigurationProperties方式、使用@Value注解方式、使用Environment、以及使用PropertiesLoaderUtils这四种方式。本文中主要讲述通过@Value注解方...

2018-12-19 23:12:29 1434 0

原创 RestTemplate 工具类的使用

Rest,即 Representtational state Transfer,翻译为:“表现层状态转化”. 常用HTTP动词如下: GET(SELECT):从服务器取出资源(一项或多项)。 POST(CREATE):在服务器新建一个资源。 PUT(UPDATE):在服务器更新资源(客户端提供改...

2018-12-18 23:31:22 1083 0

原创 我还没强到可以掌控自己命运,何去何从?唯有不负韶华

朋友半年前一个人来到无锡,稍后就要离开了。感觉有点小失落,不知道何时才能再见面,预祝他一番风顺。何去何从,我们现在还不能做主,唯有不负韶华,好好努力吧。 ------有时,友情是真正存在的,抛开所谓的情商不谈。有些人,遇见或许就是缘分。 ...

2018-12-16 15:51:27 200 0

原创 博客地址更新

由于七牛突然取消了我的测试域名使用权限,所以决定更新博客。 ** 新的个人博客地址是: https://bigjun2017.github.io/ ** 另外,抵制七牛从我做起。

2018-12-09 21:45:37 161 0

原创 Alibaba开源组件-分布式流量控制框架sentinel初探

Sentinel 是什么? 还是皮一下吧详细的介绍在Alibaba已经介绍的很详细了。 Sentinel: 分布式系统的流量防卫兵 如何使用: 其实也就三个步骤: 1、添加依赖 目前的最新的版本是0.2 &lt;dependency&gt; &lt;groupId&...

2018-12-09 18:23:11 2708 0

转载 MYSQL线上审核规范

命名规范 Ø库名、表名、字段名,使用小写字母 Ø库名、表名、字段名,不要超过30个字符 Ø库名、表名、字段名,尽量见名知意,使用下划线分割 Ø库名、表名、字段名,禁止使用MySQL保留字 Ø临时库、表名,必须以tmp为前缀,以日期为后缀,例如tmp_product_20151229 Ø备份表、表名...

2018-12-09 17:49:11 365 0

原创 使用nativefier将web打包为WebApp

在github上浪的时候发现一款开源库,可以直接将任意的网站打包为webapp。具体的操作步骤如下: 安装node.js环境 使用npm安装nativefier库; npm install nativefier -g 3.使用nativefier将你的网站封装为webapp。 nativef...

2018-12-09 16:07:12 281 0

原创 好开心,七牛外链失效的图片找回来了

今天吧我存在七牛云上的图片找回来了,好开心。 找回七牛云存储失效文件的思路:七牛云测试域名失效导致图片外链失效的解决办法

2018-12-08 17:56:10 543 0

原创 最近有点忙

最近到一个新的部门,听到一个讨厌的词“甩锅”。我不知道这个词这个部门的人如何理解,反正我是非常反感的。在我的心目中,每个人都应该是有担当的,遇到问题不逞能、不退缩,敢于承担自己的责任。通过这个词,我能预测到在这个部门里指责不清、领导混乱的一些情况,希望情况比我想象的要好。我相信我不会被他们所影响。...

2018-12-05 23:18:33 104 0

转载 单页面面应用【SPA】和多页面应用【MPA】之间的区别

单页面面应用【SPA】和多页面应用【MPA】之间的区别:

2018-10-28 11:06:48 156 0

转载 写入mysql的中文乱码问题

写入mysql的中文乱码问题《【转载】》 版权声明:本文为博主原创文章,未经博主允许不得转载。...

2018-10-07 14:19:30 950 0

原创 基于Vue2.x的自定义博客

最近闲来无事,就用Vue2.x模仿着自己的github博客手撸了一个博客,主要用到的技术有:VueX、Vue2.x、axios、iView、Router。最终的博客成果如下图: 博客架构图如下: 源码:https://gitee.com/Super_Jun/BlogDevByVue ...

2018-09-18 15:16:54 256 0

原创 SpringBoot中Session监听器的使用

当需要统计应用的试试在线人数的时候,统计成功登录后创建的session的数量是最为准确的数据。SpringBoot通过SessionListener可以很方便的监听session的生命周期。在SpringBoot中监听session的步骤如下: 1、创建session监听器. package ...

2018-09-09 17:17:52 6441 0

原创 使用JSOUP爬取国家统计局的地理位置数据

最近因工作需要,我需要爬取国家统计局的最新统计数据。因此参照网上的例子使用JSOUP爬取了国家统计局的省、市、县、镇、村的数据。因为要爬取的数据较多,因此在里面使用了多线程的相关技术。下面首先讲解下多线程相关的东西。 首先理解下什么是线程池? 因为创建和...

2018-09-02 17:00:21 676 0

原创 SpringBoot中RabbitMQ的使用详解。

最近在公司的代码里面看到RabbitMQ相关的代码,于是带着好奇心研究了下RabbitMQ. RabbitMQ的核心是交换机和队列。 交换机的功能主要是接收消息并且转发到绑定的队列,交换机不存 储消息,在启用ack模式后,交换机找不到队列会返回错误。 ...

2018-08-06 22:59:05 4296 0

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