自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

北平~

放弃很容易 但坚持一定很酷!要做个酷酷的仙子儿~

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

原创 源码解析之——ReentrantLock

并发编程系列源码解析之ReentrantLock

2022-08-07 10:52:45 390 1

原创 源码解析之——ConcurrentHashMap

并发编程系列源码之ConcurrentHashMap

2022-07-29 14:15:09 630 3

原创 spring揭秘总结(一)——spring的Ioc容器

spring揭秘这本权威书籍阅读后的总结分享,希望能帮助到你

2022-07-26 10:02:19 1307 2

原创 MAC 将本地创建好的项目上传到 公司服务器git中

首先需要登录公司git服务首页,自行创建一个新的项目工程:输入相关信息后创建,复制该工程的地址接下来来到本地进行操作,打开终端,进入到自己的项目所在目录下,输入命令,将git上的项目下载到本地:git clone 复制的路径地址这个步骤以后你的本地项目文件夹下面就会多出个文件夹,该文件夹名即为你github上面的项目名把本地项目文件夹下的所有文件(除了新多出的那个文件夹不用),其余都复制到那个新多出的文件夹下。然后进入到从git上拉下来的文件夹中,依次输入以下代码即可完成其他剩余操作:

2021-03-25 10:56:02 344 2

原创 No URLs will be polled as dynamic configuration sources

好久之前的一个问题,一直没有总结,发现网上有很多类似的问题,大概解决思路也很全面,推荐博客:No URLs will be polled as dynamic configuration sources

2021-03-25 10:16:43 738

原创 jpa多数据源启动报错More than one table found in namespace...

在jpa多数据源配置后,启动时,突然报了这个莫名其妙的异常信息(过去很多天了,异常信息当时没有及时记录),大概意思是,在进行数据库链接时发现有多余一个的同名的表存在,但是我的数据库明明只有一个这个名称的表,于是就点了点其他数据库,发现是有同名表存在的,那么为什么项目启动会扫描多个数据库,而不是一个写好地址的数据库呢?网上有说是mysql驱动的版本问题,我的项目中使用的是 <dependency> <groupId>mysql</groupId&gt

2021-03-24 16:48:47 639 1

原创 工具类:判断实体对象中的全部属性是否都有值

日常开发中,我们经常会遇到这样的场景,前端传来一个实体,我们需要将这个实体中的全部信息入库保存。但是因为数据库中的字段规定不能为空,所以在入库之前我们必须保证实体中的所有属性有值。在业务中直接一个一个判断的话,就显得代码繁琐累赘了,所以我们可以封装一个工具类,专门用来进行实体中属性是否为空判断(或者判断有些属性是否使用了默认值比如integer)。代码如下:public class CheckObjectIsNullUtils { /** * 判断对象属性是否全部有值(st

2020-12-16 19:36:16 3367 1

原创 Long类型数据返回给前端丢失精度问题解决

前几天做项目,遇到了一个小坑。一个插入数据的操作,在后端应用雪花算法生成了数据的id,插入到库中。id为long类型19位,但是当再次回显给前端时,id值变了。前几位都是一样的,只是在后几位中都变成了零。(由于时间太久,没有保留截图)在网上差了一下原因和解决办法,在此记录一下,希望对大家有帮助。我们前后端数据传输,会将返回的数据序列化为json字符串,返回给前端,前端应用js进行数据解析,但是19位的字符串id数据转换成long类型时,由于位数太长丢失了精度,会将后几位用零代替,所以前端显示的就是丢.

2020-12-10 20:09:44 4561 2

原创 迪米特法则理解+感悟

初识迪米特法则:一个类应该只和与它有直接关系的类通信,即只和直接朋友来往,并且对朋友了解的最少。一、只和直接朋友来往首先我们需要明确,什么是直接朋友(从依赖类的角度说明)1、 类对象中引入的成员变量对象2、 对象方法中作为参数传入的外部对象3、 对象方法中作为返回值的类对象4、 对象方法中声明的外部类对象总结:一个类中用到的本类之外的所有外部类对象,都可以作为这个类的朋友。那什么样的类可以作为直接朋友呢?(从被依赖类的角度说明)举个例子,客户端想获得天气的温度,这里有一个气象局类还有一个

2020-10-16 10:16:57 598

原创 java中通过RSS地址获取csdn前20条博客链接

一、导入依赖<!-- RSS start --> <dependency> <groupId>com.rometools</groupId> <artifactId>rome</artifactId> <version>1.8.0</version> </dependency>

2020-09-16 19:20:43 195

原创 使用Git命令把本地项目上传到Github托管

使用Git命令把本地项目上传到Github托管解决Git中fatal: refusing to merge unrelated historiesGithub错误:fatal: Authentication failed for 'https://github.com/ …

2020-09-01 20:15:48 117

原创 SpringCloud Nacos集群环境搭建+持久化(Linux)

前言Nacos被越来越广泛的应用,简单的单击模式只适用于测试和单机的使用,但是用在生产上就万万不可靠了,Nacos官方支持三种部署模式:单击模式-用于测试和单击试用集群模式-用于生产环境,确保高可用多集群模式-用于多数据中心场景今天我们来尝试搭建Nacos的集群模式。在搭建之前我们首先要了解的是,nacos使用了嵌入式数据库实现数据的存储,即自身带的数据库derby作为数据存储,这样的话数据并不安全,并且如果启动多个默认配置下的nacos节点,数据存储也存在一致性的问题。为了解决这个问题,n

2020-08-31 11:53:55 1209 1

原创 服务注册中心和配置中心——Nacos

前言Nacos是阿里巴巴推出的一款新的开源项目,致力于在微服务中更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。主要作用就是服务注册和配置,用一个Nacos,相当于代替了原来SpringCloud系列中的Eureka+Config+Bus。官网地址:官网、文档下载地址:下载下载后解压,直接运行bin目录下的startup.cmd文件运行成功后访问地址:管理后台 账号密码默认为nacosNacos作为服务注册中心实例准备三个微服务:两个服务提供者9001/9002 、一个服务消费

2020-08-30 16:32:30 1897

原创 分布式配置中心+总线——config+bus

众所周知,在微服务领域,将会拆分出多个 子服务,每个服务的粒度都很小,并且每个服务都需要进行相关的 配置才能运行,但是如此多的子服务,每个服务都进行相关的配置,修改时也要找到对应的配置文件进行修改,将是一件非常麻烦的事情,所以SpringCloud提供了 一个ConfigServer来解决这个问题。...

2020-08-29 14:47:24 465

原创 服务网关——Gateway

前言之前的一篇文章中,讲解的zuul网关的使用-服务网管-zuul,但是zuul1.0由于其阻塞式IO模型和没有长连接等缺陷,已经被淘汰,而zuul2.0虽然完善了这些缺点,但是目前并没有研发出来,在这期间spring cloud吸收的Netflix的思想,自己内部研发出了一款新的网管集成到spring cloud框架中使用,也就是本篇文章要讲的Gateway。介绍Gateway的特性Gateway与zuul的区别Gateway的 三大概念与工作流程1、Route(路由)路由是构建网关的基

2020-08-27 13:31:01 346

原创 服务注册中心——Consul

fsdg

2020-08-25 12:13:11 185

原创 redis序列化工具类

@Configuration@EnableCachingpublic class RedisCacheConfig { /** * jackson ObjectMapper * * @return */ @Bean public ObjectMapper objectMapper() { return JSONUtils.getObjectMapper(); } /** * jackson 序列

2020-08-07 11:49:32 182

原创 redis工具类 封装各种常用命令

redis工具类代码@Componentpublic final class RedisUtil<V> { @Autowired private RedisTemplate<String, String> redisTemplate; // =============================common============================ /** * 指定缓存失效时间 * * @par

2020-08-07 11:44:55 331

原创 redis在linux中的安装

准备redis安装包链接:https://pan.baidu.com/s/1HRe5emjFdxVSp_9v74pHkA提取码:howd或者官网下载:redis官网安装1、上传文件将安装包上传到服务器,我存放的目录为 /usr/local2、授权解压对文件进行权限的授权chmod 755 redis-4.0.9.tar.gz解压tar -zxvf redis-4.0.9.tar.gz3、编译安装 mv redis-4.0.9 redis cd redis make &

2020-08-03 11:15:13 123

原创 应用mycat进行mysql主从复制读写分离

前言进行一主一从的搭建前需要保证,已经有三台服务器(或两台,mycat在其中一台mysql服务器上),并且两台mysql服务,一台mycat服务能够正常运行。使mycat能够访问到两台mysql服务器。前期具体配置步骤可参考博客:mysql安装mycat安装配置详解一主一从配置mycat服务器中schema.xml文件配置确保schema.xml文件中,配置好主从服务器地址信息,和相关节点信息#进入到mycat目录的conf文件中cd /usr/local/mycat/confvi

2020-07-27 15:53:26 329

原创 mycat安装配置详解

前言我们知道在linux中安装软件有四种方式:1、rpm方式应用.rpm安装包,按顺序安装2、yum方式需要连接网络3、解压后即可使用4、解压后编译安装(比较麻烦,不建议使用)而我们的mycat就属于第三种,我们下载安装包放到linux上,解压就可以使用了,是不是非常方便。安装...

2020-07-26 16:01:04 257

原创 Linux(CentOS)中安装MySQL

下载mysql并放到Linux系统官网下载linux系统下的mysql,地址:mysql官网我的Linux虚拟机是CentOS的,所以选择的是Linux通用版本的MySQL通过xftp工具,将mysql压缩包放到linux系统的 /opt目录下:解压包:tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz 将解压好的文件复制并放在 /usr/local路径下,重命名为mysql:cp -r mysql-8.0.13-linux-glib

2020-07-25 20:46:45 115

转载 MySQL在Linux下安装-简单快速版

分享mysql安装

2020-07-25 19:52:46 851

原创 RabbitMq死信队列/延迟队列

在某些业务场景中,有些业务数据对应的消息在进入队列后不希望立即被处理,而是要求该消息可以延迟一定的时间,再被消费者监听消费处理,这便是“死信队列/延迟队列”出现的初衷。

2020-07-08 16:31:41 470

原创 RabbitMq消息高可用和确认消费

rabbitmq是我们非常熟悉的分布式消息中间件了,他不仅提供了消息异步通信、业务服务模块解耦、接口限流、消息延迟处理等特性,而且还具有在消息发送、传输、接收过程中,可以保证消息发送成功、不会丢失以及被确认消费机制。本篇文章将介绍一下,rabbitmq在高可用过程中所出现的问题以及如何解决这些问题从而保证高可用。

2020-07-08 14:45:33 308

原创 RabbitMq消息模型总结+实战

前言Linux中安装RabbitMQLinux环境搭建Rabbitmq集群Rabbitmq常用命令什么是RabbitMq所有 MQ 产品从模型抽象上来说都是一样的过程:消费者(consumer)订阅某个队列。生产者(producer)创建消息,然后发布到队列(queue)中,最后将消息发送到监听的消费者。不同的MQ产品有不同的机制,RabbitMQ实际基于AMQP协议的一个开源实现,因此RabbitMQ内部也是AMQP的基本概念。RabbitMQ的内部机制如下:结构说明:1、Messa

2020-07-06 16:51:50 390

原创 为什么要用消息队列+各个消息队列框架该如何选择?

消息队列是在分布式系统中非常重要的分布式架构,那引入这样的架构到底有什么优势?引入之后又会带来哪些需要考虑的地方?目前市面上流行的各个消息队列中:ActiveMQ 、RocketMQ 、RabbitMQ 和 Kafka ,我们应该如何选择来达到系统最优?这篇文章将为您详细介绍。

2020-07-06 11:24:08 2444

原创 Rabbitmq常用命令

一、 启动和关闭1、启动RabbitMQrabbitmq-server start 注意:这里可能会出现错误,错误原因是/var/lib/rabbitmq/.erlang.cookie文件权限不够。解决方案对这个文件授权chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookiechmod 400 /var/lib/rabbitmq/.erlang.cookie2、停止服务rabbitmqctl stop启动与停止其他命令servi

2020-06-29 19:52:17 557

原创 Linux环境搭建Rabbitmq集群

前言资料准备:1、erlong安装包2、rabbitmq安装包3、两台Linux服务器(本篇文章用的CentOS7)可以按照下面博客中步骤安装:Linux下安装Rabbitmq环境准备在两台Linux系统中修改hostname,分别为A和B,作为集群注册的主机名。执行语句:vi /etc/hosts修改的文件内容如下:A主机的主机名设置B主机的主机名设置设置成功后保存退出,重启服务器:reboot注意:2台Linux服务器需要完成同样的操作。关闭防火墙确保2台机器相互p

2020-06-27 18:49:08 1557

原创 Date与LocalDate类型的相互转化

01. java.util.Date --> java.time.LocalDateTimepublic void UDateToLocalDateTime() { java.util.Date date = new java.util.Date(); Instant instant = date.toInstant(); ZoneId zone = ZoneId.systemDefault(); LocalDateTime local

2020-06-16 12:58:27 1818

原创 Linux中安装RabbitMQ

下载官网地址:地址可以去官方下载最先版本,当然也可以下载我网盘上的不是最新版本 -3.4.1版本:链接:https://pan.baidu.com/s/166LT0nW-N8sHaZEzKXgCYA提取码:31ia一、安装Erlang在线安装yum install esl-erlang_17.3-1~centos~6_amd64.rpmyum install esl-erlang-compat-R14B-1.el6.noarch.rpm离线安装将上面的资料上传到自己的服务器中,一次

2020-06-13 16:54:59 2691

原创 windows下安装kibana

简介Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。关于Elasticsearch在Linux下的安装可参考博客:elasticsearch在Linux下安装安装环境和资料:Kibana依赖于node,所以你的电脑上要有node。资料地

2020-06-13 15:45:45 315

原创 Elasticsearch在Linux下安装

前言资料安装包:链接:https://pan.baidu.com/s/1XtSXc04UJIYp_9KQzg3qaA提取码:0dr4新建用户在linux下新建一个用户(出于安全考虑,elasticsearch默认不允许以root账号运行),我这里建的是 zhy创建用户:useradd zhy设置密码:passwd leyou切换用户:su - zhy上传安装包并解压将安装包上传到:/home/zhy目录解压缩:tar -zxvf elasticsearch-6.2.4.t

2020-06-13 15:35:29 149

原创 JsonView插件

Jsonview是chrome浏览器的一个插件,用来在浏览器中查看json数据的。确切的来说jQuery JSONView是一款非常实用的格式化和语法高亮JSON格式数据查看器jQuery插件。它是查看json数据的神器。比如你在浏览器查看由服务器返回的json数据时候,可能是这样的:装完json插件之后查看数据变成了下面这样:提供下载:链接:https://pan.baidu.com/s/1smz_W2nUN9CYrjG4NPOy4g提取码:4lr2...

2020-06-12 11:29:11 1246

原创 关于FastDFS

前言在说FastDFS之前我们先来了解一下什么是DFS。DFS是分布式文件系统(Distributed file system, DFS)的简称,它是一种允许文件透过网络在多台主机上分享的文件系统,可以让多机器上的多用户分享文件和存储空间。这样一来,我们对文件系统管理的物理存储资源不一定直接连在本地节点上,而是通过计算机网络与其他节点(可以理解为计算机)相连。通俗来讲:传统文件系统管理的文件就存储在本机。分布式文件系统管理的文件存储在很多机器,这些机器通过网络连接,要被统一管理。无论是上传或者访

2020-06-12 11:16:15 228

原创 服务注册中心——zookeeper实例

前提1、已经安装好zookeeper服务并能启动成功为安装的伙伴可以参考这篇博客:CentOS7中安装zookeeper简介zookeeper是一个分布式协调工具,可以实现注册中心的功能(当然他的功能不限于这一个),本篇博客从SpringCloud项目的简单实例引入zookeeper注册中心的功能。zookeeper服务测试首先要保证我们安装的zookeeper能够正常启动:关闭防火墙:进入zookeeper:查看当前zookeeper中是否有服务注册:目前只有一个zookee

2020-06-11 18:14:09 546

原创 CentOS下安装zookeeper

前言资料准备1、zookeeper3.4.13可以自行去官网下载zookeeper官网也可以下载我网盘上的对应版本:链接:https://pan.baidu.com/s/1mjg-fF1LYHYH9oAqm6B9KA提取码:t5zt2、CentOS7安装1、将下载好的压缩文件上传到centos系统中,并解压(我这里是新建了一个java的目录)解压:tar -zxvf zookeeper-3.4.11.tar.gz进入解压后的 zookeeper目录下,进入conf文件2、我们

2020-06-11 11:10:32 164

原创 SpringCloud工程热部署

一、工程中引入依赖在每个需要进行热部署的微服务中引入依赖<!--热部署--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope&g

2020-06-11 09:22:38 893 1

原创 IDEA运行tomcat8.5源代码+CookieFilter类找不到+中文乱码问题

前言所需工具:idea、jdk环境具备、tomcat版本8.5.55tomcat源代码8.5.55下载地址:tomcat官网滑到最下面:新建工程用idea新建一个空的工程导入源码并配置将下载的tomcat源码解压到该工程目录下打开该项目,新建一个home文件,将文件夹中原来的 conf文件和webapps文件放到home文件中工程目录下新建一个pom.xml文件,并导入以下依赖:<?xml version="1.0" encoding="UTF-8"?>&

2020-06-04 14:59:35 756 2

原创 Linux下FastDFS安装与访问

前言本教程所有操作均在CentOS 7.x环境下进行。需要资料:资料获取地址:链接:https://pan.baidu.com/s/1NpdCjF65KaZI-Zki-1bXHg提取码:twjw安装步骤将所需要的资料上传到/usr/local/fastdfs 目录下:1、安装gccGCC用来对C语言代码进行编译运行,使用yum命令安装:yum -y install gcc后面会用到解压命令(unzip),所以这里可以用yum把unzip 也装一下yum install -y

2020-06-03 11:56:37 1683

空空如也

空空如也

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

TA关注的人

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