
java
xj15010735572
对未来充满希望
展开
-
Sping 的常用注解(@annotation)说明
五种元注解 元注解既是注解在注解方法上的注解,有点绕口,可以简单认为几乎所有注解类会被这5种注解种的N种所修饰 @Target 这是用来标记当前注解的作用范围,java.lang.annotation.ElementType,Target通过ElementType来指定注解可使用范围的枚举集合 取值 注解使用范围 METHOD 可用于方法上 TYPE 可用...原创 2020-08-11 14:46:52 · 1243 阅读 · 0 评论 -
Thread 多线程问题解答
1.Java 实现线程得方式有几种继承Thread类 (无返回值)实现Runnable接口 (无返回值)实现Callable接口,同时通过FutureTask包装器来创建线程(有返回值)(所有线程启动必须用start(),run方法是不会创建新线程得,它只是一个普通方法,注意看源码)2.如何停止一个线程 调用Thread中得stop(),suspend(),resume()(不推荐使用这种方法,这三个方法本身也是过期得,因为是强制停止,所以内存啊,数据啥的...原创 2020-08-07 19:23:49 · 330 阅读 · 0 评论 -
JAVA JVM相关知识点(01)
JVM 知识点:分代回收: 青年代:青年代分3个区域 Eden(伊甸园,新对象存放区域),Survivor1,Survivor2 (幸存区,一般两个幸存区大小1:1),伊甸园和幸存区大小4:1 老年代:存放大对象和经过N次GC(貌似默认是11次,可以通过jvm参数改变)仍然存活得对象 永久代:在jdk1.8以后取消了永久代,新增了一个元数据空间,其主要存储类信息,静态变量,常量,即时编译器编译得代码。(永久代是方法区的实现)垃圾回...原创 2020-08-03 17:05:55 · 221 阅读 · 0 评论 -
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 · 227 阅读 · 0 评论 -
多线程相关知识回顾第一篇
(盗图)开局一张图,内容全靠编:这张图是我们JDK中线程池的部分结构,所有类都继承自Executor, Executor 顾名思义是专门用来处理多线程相关的一个接口, 里面有一个execute()方法,用来执行线程一、线程池接口:ExecutorService为线程池接口,提供了线程池生命周期方法(shutdown(),submit(Runnable task)...),继承自Executor接口。ThreadPoolExecutor为线程池实现类,提供了线程池的维护操作等相关方法,继承原创 2020-07-06 17:33:52 · 146 阅读 · 0 评论 -
Redis与RabbitMQ用作消息队列的区别
RabbitMQRabbitMQ是一个专门的AMQP协议队列,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗,他的优势就在于提供可靠的队列服务,使得不同的应用可以通过同一个协议去共享数据,并且可做到异步。RedisRedis众所周知是一个内存级别的数据库,通过键值对的方式才存储数据,但虽然Redis本身是一个数据库,但是Redis本身是支持MQ(Message...原创 2020-04-07 11:55:18 · 2090 阅读 · 0 评论 -
关于Spring boot 中配置文件的问题
(遇到这个问题的原因是因为我在使用Spring config时 ,将config部署在远程服务器上,并且改了默认的端口号,发现在启动客户端项目时不能拿到config中的相关配置)Spring cloud 中 application.yml 和 bootstrap.yml 的区别:SpringBoot默认支持properties和YAML两种格式的配置文件。前者格式简单,但是只支持键值对。...原创 2019-12-30 14:01:46 · 360 阅读 · 0 评论 -
关于解决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 · 7313 阅读 · 0 评论 -
关于Feign中Ribbon的配置
关于客户端ribbon 的配置问题在使用@FeignClient注解的时候 是默认使用了ribbon进行客户端的负载均衡的,默认的是随机的策略,那么如果我们想要更改策略的话,需要修改消费者yml中的配置,如下:# 配置ribbonstu-provide:ribbon:# NFLoadBalancerRuleClassName: com.netflix.loadbalancer.R...原创 2019-12-30 13:54:41 · 1799 阅读 · 0 评论 -
关于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 · 727 阅读 · 0 评论 -
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 · 976 阅读 · 0 评论 -
关于图片验证码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 · 517 阅读 · 0 评论 -
关于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 · 1449 阅读 · 1 评论 -
JWT得使用方式和心得
JWT 鉴权方式是不同于传统session 得一种方式,方便实现跨域和分布式鉴权。JWT架构图maven依赖: <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactI...原创 2019-08-28 16:36:56 · 1220 阅读 · 0 评论 -
关于消息队列 RabbitMQ 和 Kafka 的简单操作;
RabbitMQ :RabbitMQ官网介绍了,它支持六种应用场景:简单队列、工作队列、发布/订阅、路由模式、Topics主题模式、RPC,接下来分别介绍。<dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId>...原创 2019-07-24 16:10:53 · 262 阅读 · 0 评论 -
关于使用JMX,Jconsole,Jvisualvm得操作记录
1.Jconsole 和 Jvisualvm 是jdk 自带得可视化工具,用以查看Java程序得jvm等相关信息,并能查看自定义的信息。2. 远程查看信息 本地查看信息这里就不说了直接打开工具就可以了。 如果我们的程序部署在远程的tomcat下了,那么我们需要修改一下几处: 1.修改tomcat的catalina.sh文件: JAVA...原创 2019-07-24 10:58:03 · 283 阅读 · 0 评论 -
Failover与Failback的区别
Failover与Failback的区别failback failover 心跳Failover 失效转移 通俗地说,即当A无法为客户服务时,系统能够自动地切换,使B能够及时地顶上继续为客户提供服务,且客户感觉不到这个为他提供服务的对象已经更换。 这里的A和B可以存在于各种领域,但一般fail-over特指计算机领域的数据库、应用服务、硬件设备等的失效转移。原创 2018-01-09 23:01:00 · 461 阅读 · 0 评论 -
RPC框架的意义和用法,什么是RPC
关于RPC框架,首先我们要了解什么叫RPC,为什么要用RPC。RPC是只远程过程调用,也就是说两台服务器A,B, 一个应用部署在A服务器上,另一个应用部署在B服务器上,A服务器上的应用想要调用B服务器上的应用提供的方法/函数,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语意和传递调用的参数。比如说,一个方法可能这样定义:Student getStudentByName(原创 2018-01-10 17:00:04 · 32545 阅读 · 0 评论 -
Tomcat 7最大并发连接数的正确修改方法
本文转自 http://blog.youkuaiyun.com/qysh123/article/details/11678903这是个很简单的问题,但是搜了一圈,发现大家都写错了。所以这里总结一下:几乎所有的中文网页都介绍,要修改Tomcat的默认最大并发连接数,应该进行如下设置(实际上这些步骤是错误的):--------------------------------------------在tomcat配...转载 2018-03-12 15:28:41 · 362 阅读 · 0 评论 -
Java 反射 使用总结
转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/6074887.html1反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。反射机制能做什么反射机制主要提供了以下功能:在运行时判断任意一个对象所属...转载 2018-03-12 19:38:59 · 165 阅读 · 0 评论 -
Dubbo配置方式详解
为了更好的阅读体验,请点击这里跳转到最新的文章:《Dubbo配置方式详解》Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是阿里巴巴 SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Dubbo 采用全Spring配置方式,透明化接入应用,对应用没有任何AP...转载 2018-03-26 10:12:58 · 216 阅读 · 0 评论 -
利用redis实现消息订阅和推送
redis的消息推送可以用在同一项目中,也可用在不同项目中,文章中我们以同一个项目为例:首先我们需要一个maven 项目,在pom文件中加入如下配置: <!-- Redis 配置中心 --> <profile.redis.ip>10.20.200.21</profile.redis.ip> <profile.redis.port&...原创 2018-05-22 13:37:48 · 11374 阅读 · 0 评论 -
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 · 164 阅读 · 0 评论 -
aliyun阿里云Maven仓库地址——加速你的maven构建
maven仓库用过的人都知道,国内有多么的悲催。还好有比较好用的镜像可以使用,尽快记录下来。速度提升100倍。http://maven.aliyun.com/nexus/#view-repositories;public~browsestorage在maven的settings.xml 文件里配置mirrors的子节点,添加如下mirror <mirror> &l...转载 2018-05-23 20:37:17 · 1159 阅读 · 0 评论 -
深入理解JVM(七)——性能监控工具
前言 工欲善其事必先利其器,性能优化和故障排查在我们大都数人眼里是件比较棘手的事情,一是需要具备一定的原理知识作为基础,二是需要掌握排查问题和解决问题的流程、方法。本文就将介绍利用性能监控工具,帮助开发者更快更准的找到问题产生的根源。本文分为三部分,第一部分将介绍在Linux环境下的常用监控工具,第二部分介绍Windows环境下的监控工具,第三部分将通过一个案例,介绍利用这些监控工具一步一步找出...转载 2018-05-23 20:38:16 · 286 阅读 · 0 评论 -
支付宝和微信APP支付 java服务端代码
支付宝和微信支付的接入基本只需要看官方文档就能很好的弄明白,这里我做记录一些我在接入是写demo首先需要创建一个配置管理的类:public final class ZhifubaoConfig { /** * 应用号 */ public static String APP_ID = "2018080360956028"; /** * ...原创 2018-09-12 21:33:14 · 2536 阅读 · 1 评论 -
LINUX top命令详细解释
查看多核CPU命令mpstat -P ALL 和 sar -P ALL说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txttop命令经常用来监控Linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。本文通过一个运行中的WEB服务器的...转载 2018-09-17 17:19:33 · 1493 阅读 · 0 评论 -
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 · 415 阅读 · 0 评论 -
处理中文乱码问题 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 · 3524 阅读 · 0 评论 -
关于2PC(二阶段提交)和3PC(三阶段提交)的理解
分布式系统和分布式一致性问题 分布式系统,即运行在多台不同的网络计算机上的软硬件系统,并且仅通过消息传递来进行通信和协调。 分布式一致性问题,即相互独立的节点之间如何就一项决议达成一致的问题。2PC(Two-Phase Commit 二阶段提交) 二阶段提交,是指将事务提交分成两个部分:准备阶段和提交阶段。事务的发起者称之为协调者,事务的执行者称为参与者。阶段一:...原创 2019-01-10 15:59:02 · 7160 阅读 · 2 评论 -
Java序列化对象的一个使用案例-使用Http发送对象
《 Effective Java 》中序列化一节关于java的序列化存在如下说法:对象序列化(object serialization)API,它提供了一个框架,用来将对象编码成字节流(serializing),并从字节流编码中重新构建对象(deserializing)。一旦对象被序列化后,它的编码就可以从一台正在运行的jvm传到另一台jvm上,或者被存储在磁盘上,供以后反序列化时用(如tomca转载 2017-12-11 14:18:13 · 1346 阅读 · 0 评论