自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 Sping 的常用注解(@annotation)说明

五种元注解 元注解既是注解在注解方法上的注解,有点绕口,可以简单认为几乎所有注解类会被这5种注解种的N种所修饰 @Target 这是用来标记当前注解的作用范围,java.lang.annotation.ElementType,Target通过ElementType来指定注解可使用范围的枚举集合 取值 注解使用范围 METHOD 可用于方法上 TYPE 可用...

2020-08-11 14:46:52 48

原创 Thread 多线程问题解答

1.Java 实现线程得方式有几种继承Thread类 (无返回值)实现Runnable接口 (无返回值)实现Callable接口,同时通过FutureTask包装器来创建线程(有返回值)(所有线程启动必须用start(),run方法是不会创建新线程得,它只是一个普通方法,注意看源码)2.如何停止一个线程 调用Thread中得stop(),suspend(),resume()(不推荐使用这种方法,这三个方法本身也是过期得,因为是强制停止,所以内存啊,数据啥的...

2020-08-07 19:23:49 42

原创 关于解决maven 打包时出现的各种问题解决办法

关于解决maven 打包时出现的各种问题解决办法一》Maven打包报错:[WARNING] The POM for xxx is missing, no dependency inform当出现这种警告是说明场景使用Maven创建的一个多模块项目,一个wa-service模块,一个wa-app模块,wa-app模块依赖于wa-service模块,且他们都是WebAppDemo的子模...

2019-12-30 13:57:46 2932

原创 利用redis实现消息订阅和推送

redis的消息推送可以用在同一项目中,也可用在不同项目中,文章中我们以同一个项目为例:首先我们需要一个maven 项目,在pom文件中加入如下配置: <!-- Redis 配置中心 --> <profile.redis.ip>10.20.200.21</profile.redis.ip> <profile.redis.port&...

2018-05-22 13:37:48 9585

原创 RPC框架的意义和用法,什么是RPC

关于RPC框架,首先我们要了解什么叫RPC,为什么要用RPC。RPC是只远程过程调用,也就是说两台服务器A,B, 一个应用部署在A服务器上,另一个应用部署在B服务器上,A服务器上的应用想要调用B服务器上的应用提供的方法/函数,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语意和传递调用的参数。比如说,一个方法可能这样定义:Student getStudentByName(

2018-01-10 17:00:04 30325

原创 jvm的调优工具和参数

这一篇主要记录一下jvm的调优工具和参数JVM调优我们用到的工具:jps:JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程。(还可以使用 ps aux|grep java)jstat:JVM statistics Monitoring是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。jstat可以参考:https://www.cnblogs.com/sxdcgaq8080/p/...

2020-08-04 14:05:24 81

原创 JAVA JVM相关知识点(02)

JVM 知识点:内存模型:Java虚拟机主要分为以下一个区: 方法区: 1. 有时候也成为永久代,在该区内很少发生垃圾回收,但是并不代表不发生GC,在这里进行的GC主要是对方法区里的常量池和对类 型的卸载 2. 方法区主要用来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译后的代码等数据。 3. 该区域是被线程共享的。 4. 方法区里有一...

2020-08-03 18:22:20 34

原创 JAVA JVM相关知识点(01)

JVM 知识点:分代回收: 青年代:青年代分3个区域 Eden(伊甸园,新对象存放区域),Survivor1,Survivor2 (幸存区,一般两个幸存区大小1:1),伊甸园和幸存区大小4:1 老年代:存放大对象和经过N次GC(貌似默认是11次,可以通过jvm参数改变)仍然存活得对象 永久代:在jdk1.8以后取消了永久代,新增了一个元数据空间,其主要存储类信息,静态变量,常量,即时编译器编译得代码。(永久代是方法区的实现)垃圾回...

2020-08-03 17:05:55 24

原创 Java 基础篇整理-1

最近在复习一下Java的一些基础东西,我整理了一部分,有错误的地方大家可以留言,部分内容我也是从网上学习(抄袭)来的,后续还会复习整理。1.Java语言得特点:1.简单易学,上手容易 2.可跨平台(在自己得JVM上运行) 3.安全性高 4.面向对象思想 5.支持多线程2.java的八大基本数据类型:byte(1),short(2),int(4),long(8),float(4),double(8),boolean,char(2)3.instanceof 的含义和用...

2020-07-24 16:13:40 29

原创 自定义Exception 和 枚举 联合使用带来的方便

关于自定义Exception的用法在项目中有很多,我们平常是怎么做的,大多是不是在service中throw 一个我们提前定义好的Exception,例如:在靠谱点的就是建立一个BaseException,其他的自定义异常都继承这个class,这样做的好处是在处理异常时给我提供了很多便利。今天我要说的是把异常和枚举结合起来用,我当前自己的项目中就是这么使用的,啥也不说了上代码:BaseException(限于篇幅部分代码删除了):publicclassBaseExcept...

2020-07-10 16:11:03 57

原创 多线程相关知识回顾第一篇

(盗图)开局一张图,内容全靠编:这张图是我们JDK中线程池的部分结构,所有类都继承自Executor, Executor 顾名思义是专门用来处理多线程相关的一个接口, 里面有一个execute()方法,用来执行线程一、线程池接口:ExecutorService为线程池接口,提供了线程池生命周期方法(shutdown(),submit(Runnable task)...),继承自Executor接口。ThreadPoolExecutor为线程池实现类,提供了线程池的维护操作等相关方法,继承

2020-07-06 17:33:52 30

原创 Redis与RabbitMQ用作消息队列的区别

RabbitMQRabbitMQ是一个专门的AMQP协议队列,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗,他的优势就在于提供可靠的队列服务,使得不同的应用可以通过同一个协议去共享数据,并且可做到异步。RedisRedis众所周知是一个内存级别的数据库,通过键值对的方式才存储数据,但虽然Redis本身是一个数据库,但是Redis本身是支持MQ(Message...

2020-04-07 11:55:18 252

原创 elasticsearch安装过程中的各种坑

Centos7 安装Elasticsearch 7.1.1环境Centos7JDK1.8Elasticsearch 7.1.1准备工作Elasticsearch 需要JDK环境,需要首先安装JDKElasticsearch7.1.1下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticse...

2019-12-30 14:08:53 490

原创 关于Spring boot 中配置文件的问题

(遇到这个问题的原因是因为我在使用Spring config时 ,将config部署在远程服务器上,并且改了默认的端口号,发现在启动客户端项目时不能拿到config中的相关配置)Spring cloud 中 application.yml 和 bootstrap.yml 的区别:SpringBoot默认支持properties和YAML两种格式的配置文件。前者格式简单,但是只支持键值对。...

2019-12-30 14:01:46 54

原创 关于Feign中Ribbon的配置

关于客户端ribbon 的配置问题在使用@FeignClient注解的时候 是默认使用了ribbon进行客户端的负载均衡的,默认的是随机的策略,那么如果我们想要更改策略的话,需要修改消费者yml中的配置,如下:# 配置ribbonstu-provide:ribbon:# NFLoadBalancerRuleClassName: com.netflix.loadbalancer.R...

2019-12-30 13:54:41 429

原创 关于Feign 中熔断器(hystrix)

关于Feign 中 Hystrix 的使用关于@FeignClient中参数详情:https://www.cnblogs.com/moonandstar08/p/7565442.htmlFeign 常用配置参考:https://www.iteye.com/blog/huan1993-2424108Spring Cloud Feign就是通过Fallback实现的,...

2019-12-30 12:02:38 252

原创 spring 订阅发布实现

这里我们学习一下Spring的订阅发布功能参考资料:https://www.jianshu.com/p/e2d257ce410d?from=timeline&isappinstalled=0https://www.iteye.com/blog/butteryrose-2283056整个功能分为三部分:事件,发布 ,订阅事件必须继承ApplicationEvent...

2019-12-30 11:41:29 445

原创 关于图片验证码Kaptcha的应用

关于Kaptcha的项目应用应用环境Spring boot + Spring Cloud首先pom.xml 种注入kaptcha的相关依赖:<dependency><groupId>com.github.penggle</groupId><artifactId>kaptcha</artifactId><ver...

2019-12-30 11:17:58 154

原创 关于Spring Cloud Gateway 学习记录

微服务网关:Spring Cloud Gateway写之前 我先把官方的文档地址贴出来:https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.1.0.RELEASE/single/spring-cloud-gateway.html1.概述Spring cloud gateway是sprin...

2019-12-30 11:07:57 470 1

原创 学习笔记(01):通俗易懂的Bootstrap视频课程(适合初学者的教程)-图标、下拉菜单、按钮组...

基于Bootstrap v3.3.7版本,以通俗易懂的方式讲解Bootstrap框架技术,适合初学者的教程,让你少走弯路!1. Bootstrap简介、起步、栅格系统、全局CSS样式、组件、插件等2. 采用笔记+代码案例的形式讲解,通俗易懂...

2019-09-18 17:33:30 47

原创 JWT得使用方式和心得

JWT 鉴权方式是不同于传统session 得一种方式,方便实现跨域和分布式鉴权。JWT架构图maven依赖: <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactI...

2019-08-28 16:36:56 550

原创 关于消息队列 RabbitMQ 和 Kafka 的简单操作;

RabbitMQ :RabbitMQ官网介绍了,它支持六种应用场景:简单队列、工作队列、发布/订阅、路由模式、Topics主题模式、RPC,接下来分别介绍。<dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId&gt...

2019-07-24 16:10:53 47

原创 关于使用JMX,Jconsole,Jvisualvm得操作记录

1.Jconsole 和 Jvisualvm 是jdk 自带得可视化工具,用以查看Java程序得jvm等相关信息,并能查看自定义的信息。2. 远程查看信息 本地查看信息这里就不说了直接打开工具就可以了。 如果我们的程序部署在远程的tomcat下了,那么我们需要修改一下几处: 1.修改tomcat的catalina.sh文件: JAVA...

2019-07-24 10:58:03 62

原创 关于2PC(二阶段提交)和3PC(三阶段提交)的理解

分布式系统和分布式一致性问题   分布式系统,即运行在多台不同的网络计算机上的软硬件系统,并且仅通过消息传递来进行通信和协调。  分布式一致性问题,即相互独立的节点之间如何就一项决议达成一致的问题。2PC(Two-Phase Commit 二阶段提交) 二阶段提交,是指将事务提交分成两个部分:准备阶段和提交阶段。事务的发起者称之为协调者,事务的执行者称为参与者。阶段一:...

2019-01-10 15:59:02 3320

转载 eolinker java版本在linux服务器部署

1、从GitHub下载安装包:https://github.com/eolinker/CHN-EOLINKER-AMS-Lite-4.0-For-Java 使用git clone https://github.com/eolinker/CHN-EOLINKER-AMS-Lite-4.0-For-Java.git或者下载zip包并解压到本地   2、...

2019-01-08 14:18:07 1332 3

原创 处理中文乱码问题 URLEncoder和URLDecoder的使用

1.URLEncoder.encode(String s, String enc) 使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式 URLDecoder.decode(String s, String enc) 使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。 2.发送的时候使...

2018-11-23 14:31:18 1659

原创 HyStrix 精华提炼

最近在学些springcloud 相关的东西,看到hystrix的相关内容,觉得非常有用,在此记录一下。hystrix(容断器    具有容错和断路的功能)需要说的一点是 hystrix 是作用在调用者一方的组件,与被调用者无关下面直接上代码:        &lt;dependency&gt;            &lt;groupId&gt;com.netflix.hyst...

2018-09-20 16:47:15 98

转载 Redis分布式锁的正确实现方式

Redis分布式锁的正确实现方式前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了...

2018-09-19 16:27:14 117

原创 Hystrix 详解

Hystrix入门指南Introduction 1、Where does the name come from?hystrix对应的中文名字是“豪猪”,豪猪周身长满了刺,能保护自己不受天敌的伤害,代表了一种防御机制,这与hystrix本身的功能不谋而合,因此Netflix团队将该框架命名为Hystrix,并使用了对应的卡通形象做作为logo。2、What Is Hystri...

2018-09-18 11:06:37 235

转载 LINUX top命令详细解释

查看多核CPU命令mpstat -P ALL  和  sar -P ALL 说明:sar -P ALL &gt; aaa.txt   重定向输出内容到文件 aaa.txttop命令经常用来监控Linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。本文通过一个运行中的WEB服务器的...

2018-09-17 17:19:33 687

转载 GIT 上传自己的项目

首先你得注册一个自己的GitHub账号,注册网址:https://github.com/join有了自己的账号以后,就可以进行登录,开始创建一个新的项目创建一个新的项目,填写项目名称,描述创建完成之后,跳转到下面的页面,下面红框中的网址要记住,在后面上传代码的时候需要使用接下来,我们需要先下载Git,这里最好下载最新版本的Git,这里附上我下载的Git2.6.2的网...

2018-09-13 16:03:57 229

原创 支付宝和微信APP支付 java服务端代码

支付宝和微信支付的接入基本只需要看官方文档就能很好的弄明白,这里我做记录一些我在接入是写demo首先需要创建一个配置管理的类:public final class ZhifubaoConfig { /** * 应用号 */ public static String APP_ID = "2018080360956028"; /** * ...

2018-09-12 21:33:14 1564

转载 深入理解JVM(七)——性能监控工具

前言  工欲善其事必先利其器,性能优化和故障排查在我们大都数人眼里是件比较棘手的事情,一是需要具备一定的原理知识作为基础,二是需要掌握排查问题和解决问题的流程、方法。本文就将介绍利用性能监控工具,帮助开发者更快更准的找到问题产生的根源。本文分为三部分,第一部分将介绍在Linux环境下的常用监控工具,第二部分介绍Windows环境下的监控工具,第三部分将通过一个案例,介绍利用这些监控工具一步一步找出...

2018-05-23 20:38:16 224

转载 aliyun阿里云Maven仓库地址——加速你的maven构建

maven仓库用过的人都知道,国内有多么的悲催。还好有比较好用的镜像可以使用,尽快记录下来。速度提升100倍。http://maven.aliyun.com/nexus/#view-repositories;public~browsestorage在maven的settings.xml 文件里配置mirrors的子节点,添加如下mirror &lt;mirror&gt; &l...

2018-05-23 20:37:17 817

原创 JAVA 自定义注解

一、创建自定义注解import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Inherited;import java.lang.annotation.Retention;import java.lang.annotation.Rete...

2018-05-23 11:04:35 84

转载 Dubbo配置方式详解

为了更好的阅读体验,请点击这里跳转到最新的文章:《Dubbo配置方式详解》Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是阿里巴巴 SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Dubbo 采用全Spring配置方式,透明化接入应用,对应用没有任何AP...

2018-03-26 10:12:58 77

转载 Java 反射 使用总结

转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/6074887.html1反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。反射机制能做什么反射机制主要提供了以下功能:在运行时判断任意一个对象所属...

2018-03-12 19:38:59 93

转载 Tomcat 7最大并发连接数的正确修改方法

本文转自 http://blog.csdn.net/qysh123/article/details/11678903这是个很简单的问题,但是搜了一圈,发现大家都写错了。所以这里总结一下:几乎所有的中文网页都介绍,要修改Tomcat的默认最大并发连接数,应该进行如下设置(实际上这些步骤是错误的):--------------------------------------------在tomcat配...

2018-03-12 15:28:41 268

原创 Failover与Failback的区别

Failover与Failback的区别failback failover 心跳Failover 失效转移 通俗地说,即当A无法为客户服务时,系统能够自动地切换,使B能够及时地顶上继续为客户提供服务,且客户感觉不到这个为他提供服务的对象已经更换。 这里的A和B可以存在于各种领域,但一般fail-over特指计算机领域的数据库、应用服务、硬件设备等的失效转移。

2018-01-09 23:01:00 267

转载 Java序列化对象的一个使用案例-使用Http发送对象

《 Effective Java 》中序列化一节关于java的序列化存在如下说法:对象序列化(object serialization)API,它提供了一个框架,用来将对象编码成字节流(serializing),并从字节流编码中重新构建对象(deserializing)。一旦对象被序列化后,它的编码就可以从一台正在运行的jvm传到另一台jvm上,或者被存储在磁盘上,供以后反序列化时用(如tomca

2017-12-11 14:18:13 553

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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