![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java学习笔记
文章平均质量分 76
XCXCXCXCX__
这个作者很懒,什么都没留下…
展开
-
java高级特性之泛型
看了一些关于泛型的文章,写一下自己对于泛型的理解。。 当我们知道了泛型可以用来干什么之后就自然而然会明白泛型是什么了,即使它是一个非常抽象的东西。 泛型,泛,大致的,就是你知道它是一个黑盒子里面装的东西,但是你不知道它具体是什么,它可能是炸弹,可能是糖果,或者是iphone X。 那泛型可以用来干什么呢,打个比方,老板让你送一个快递盒子,你的快递盒子里面装的东西你并不知道,老板也不会告诉你它是原创 2017-10-16 17:14:06 · 452 阅读 · 2 评论 -
【分布式事务】Spring Cloud集成fescar的示例demo
spring-cloud-fescarspring cloud集成fescar的demo工程准备工作阅读官方文档Quick Start,并成功启动fescar-server传送门初始化demo数据库工程路径下fescar_demo.sql文件测试效果修改demo工程中的配置文件account-service:用户账户服务,仅提供用户账户的扣减接口,端口:11...原创 2019-03-12 20:10:46 · 2935 阅读 · 0 评论 -
Dubbo系列(四)源码分析之服务调用
Dubbo系列(四)源码分析之服务调用前文介绍了Dubbo中服务暴露的过程,本文继续介绍服务调用的过程,让一次服务调用过程连接起来理解。如果读者是第一次阅读本文且对Dubbo SPI没有了解,可以先阅读《Dubbo系列(二)源码分析之SPI机制》、《Dubbo系列(三)源码分析之服务暴露》。ps.本文只考虑整合Zookeeper的情况下的默认配置调用过程读取配置信息这里就不赘述了, ...原创 2019-01-15 09:47:46 · 207 阅读 · 0 评论 -
Dubbo系列(三)源码分析之服务暴露
Dubbo系列(三)源码分析之服务暴露前文介绍了Dubbo SPI机制,相信读者应该具备Dubbo中SPI实现类跟踪的能> 力,那么在本文中将会直接跳过SPI分析的过程。如果读者是第一次阅读本文且对Dubbo SPI没有了解,可以先阅读《Dubbo系列(二)源码分析之SPI机制》读取配置信息依赖Spring容器根据spring官方文档给的规范进行扩展,增加Dubbo命名标签,如...原创 2019-01-15 09:45:44 · 470 阅读 · 0 评论 -
Dubbo系列(二)源码分析之SPI机制
Dubbo系列(二)源码分析之SPI机制在阅读Dubbo源码时,常常看到ExtensionLoader.getExtensionLoader(*.class).getAdaptiveExtension();ExtensionLoader.getExtensionLoader(*.class).getExtension(“name”);那么需要深入了解dubbo,了解SPI源码是必不可少...原创 2019-01-15 09:43:58 · 353 阅读 · 0 评论 -
Dubbo系列(一)dubbo介绍和入门
Dubbo系列(一)dubbo介绍和入门学习Dubbo 之前,先了解一下这几个问题:Dubbo是什么?互联网发展的背景Dubbo介绍Dubbo的优势在哪里?了解了dubbo之后,让我们从零搭建一个简单的dubbo项目。Dubbo是什么官网介绍Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核...原创 2019-01-15 09:42:39 · 3067 阅读 · 0 评论 -
【java中间件】自己动手实现一个属于自己的mydubbo
摘要最近在学习zookeeper的选举机制和使用、java如何调用及应用场景,dubbo理所应当的进入了我的视野,作为阿里开源的强大中间件dubbo,我们也应该了解其基本原理和应用场景。 RPC,远程服务调用,dubbo作为服务调用的中间人,为服务消费者和服务提供者来提供服务,首先,要知道dubbo的主要功能:提供服务注册和服务发现的功能(依赖zookeeper)服务间的通讯实现服...原创 2018-09-05 19:52:27 · 854 阅读 · 0 评论 -
【java基础】Integer的自动装箱拆箱与缓存机制
import java.lang.reflect.Field;/** * @author XCXCXCXCX * @date 2018/8/31 * @comments */public class Test { public static void main(String[] args) throws IllegalAccessException, NoSuchFieldE...原创 2018-08-31 17:08:35 · 531 阅读 · 0 评论 -
【java反射/注解】简单的反射与注解实践
简单的反射与注解实践反射的使用指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能调用它的任意一个方法.这种动态获取信息,以及动态调用对象方法的功能叫java语言的反射机制。ps.JCA.Java Security能控制反射访问范围反射常用方法getClass()getClassLoader()构造器(constructor)...原创 2018-08-04 12:22:47 · 270 阅读 · 0 评论 -
【java集合】jdk 1.8 HashTable和ConcurrentHashMap的源码浅析
通过阅读源码可以看到,HashTable相对以前版本来说变化很小,而ConcurrentHashMap在jdk1.8的实现方式上有很大的变化,过去的ConcurrentHashMap是采用分段锁的segment来对一小段数组头节点进行加锁然后put、remove操作,而jdk1.8中的ConcurrentHashMap再次缩小了锁的粒度,结合了volatile,在每次put、remove操...原创 2018-04-21 23:10:30 · 334 阅读 · 0 评论 -
【java集合】jdk1.8 HashMap源码浅析
花了一些时间阅读了jdk1.8中的HashMap、LinkedHashMap、TreeMap和WeakHashMap的源码,整理一下学习到的东西,这篇博客主要写HashMap的实现源码,并次要总结一下另外三个map实现类的实现原理和特性。HashMap采用的数据结构首先介绍一个重要的参数TREEIFY_THRESHOLD,看一下官方备注。/** * The bin count t...原创 2018-04-20 18:13:19 · 245 阅读 · 0 评论 -
【java锁】探索AQS的实现原理和源码阅读
先谈几个大家熟悉的,java.util.concurrent包中的ReentrantLock、CountDownLatch、Semaphore、CyclicBarrier,这几个类都是通过AQS来实现的,先学习了AQS再回头看看这几个类。AQS是什么?它的数据结构是怎样的?AQS全名AbstractQueuedSynchronizer,翻译过来是抽象队列式同步器,队列、同步,在我们学习锁的...原创 2018-04-23 16:42:00 · 413 阅读 · 0 评论 -
商品秒杀系统-秒杀模块的开发【https://github.com/XCXCXCXCX/KillSystem】
在开始设计秒杀模块的时候由于对一些知识了解还不够,设计的比较复杂,想把秒杀思路改变的心路历程都记录下来。一、秒杀思路变形记最初思路: 三层秒杀 1.在tomcat维护管理每个商品库存的线程,商品库存为0后撤销线程 2.在redis记录库存量和订单信息 3.在mysql记录库存量和订单信息每次发起抢购请求,在redis写入订单信息并且在tomcat...原创 2018-04-12 16:12:38 · 4933 阅读 · 5 评论 -
商品秒杀系统-支付模块的开发【https://github.com/XCXCXCXCX/KillSystem】
一、沙箱环境配置我使用的是测试沙箱环境,使用沙箱测试版的支付宝进行测试,如果需要上线部署,要申请接入哦APPID阿里提供的,后面流程中需要把这个APPID复制粘贴到项目配置中支付宝网关直接使用图中测试环境的网关地址RSA2/RSA密钥这里我使用的是RSA2密钥,需要配置RSA2该栏目,先是生成RSA2的公钥密钥对(在阿里开发文档中有提供生成密钥对的工具,下载后按照文档生成密钥对并进行后续配置,这里...原创 2018-04-14 18:28:12 · 4744 阅读 · 0 评论 -
对五种排序的实现【java】
冒泡排序:package sort;//冒泡public class BubbleSort { private int[] a; public BubbleSort(int[] a) { // TODO Auto-generated constructor stub this.a = a; } //把小的冒泡到前面,即从小到大 public void sort() {原创 2017-12-07 21:38:28 · 224 阅读 · 0 评论 -
微服务系列(六)探究Spring Cloud服务调用
微服务系列(六)探究Spring Cloud服务调用大纲分布式架构的“骨架”基于http协议的通讯模式RestTemplate与Feign新的选择WebClient从Spring源码中我看到了什么分布式架构的“骨架”分布式架构是由一个个组件组装而成,各司其职,对外提供服务。而将他们联系起来的则是网络,组件之间的通讯方式则是这个分布式架构的“骨架”。如果没有“骨架”,每个组...原创 2019-07-30 20:27:21 · 439 阅读 · 0 评论