- 博客(20)
- 收藏
- 关注
原创 Java 虚拟机:运行时数据区域
运行时数据区域完整图程序计数器虚拟机栈本地方法栈本地方法栈与虚拟机栈所发挥的作用是非常相似的,也是线程私有的。其区别只是虚拟机栈为虚拟机执行 Java 方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用到的本地方法(如 C语言)服务。它的具体做法是 Native Method Stack 中登记 native 方法,在 Execution Engine(执行引擎) 执行时加载本地方法库。《Java 虚拟机规范》对本地方法栈中方法使用的语言、作用方式与数据结构并没有任何强制规定,因此具体的虚拟
2021-01-19 21:11:39 527
原创 基于 RAS 非对称加密算法实现 License 认证
文章目录RAS 非对称加密实现步骤RSAUtilsBase64UtilsLicenseGeneratorLicenseService获取文件路径区别RAS 非对称加密RSA公开密钥密码体制的原理是:根据数论,寻求两个大素数比较简单,而将它们的乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。非对称加密,加密与解密使用的密钥不是同一密钥,对中一个对外公开,称为公钥,另一个只有所有者知道,称为私钥。用公钥加密的信息只有私钥才能解开,反之,用私钥加密的信息只有公钥才能解开(签名验签)。实现步骤
2020-09-21 14:54:30 1207
原创 基于 Maven Profile 实现项目多环境切换
文章目录需求实现步骤配置 profile 节点添加与 profile 配置相对应的配置文件目录配置 resource 节点打包发布需求项目分为内外网项目,架构为 Maven + ssm,因为开发、测试、发布流程不规范并且维护成本巨大,需要进行整体规范改造,而分给我做的是实现项目多环境配置。在没有进行改造之前,切换环境是在配置文件中开启或者关闭相对应环境的注释,而因为环境大体上又分一级部署、二级部署、自主部署等,导致相关人员还要去记如何区别环境才能进行开发、打包,所以需要进行改造。下图为模拟当时的环境(需
2020-09-08 16:02:37 439
原创 Spring Cloud 学习笔记:Hystrix 断路器
文章目录Hystrix服务雪崩断路器简介Hystrix 功能Hystrix 重要概念Spring Cloud 整合JMeter 压测添加请求服务调用服务降级服务端单侧 fallback消费端单侧 fallback全局服务降级 @defaultFallback@FeignClient(fallback= xxx.class)服务熔断熔断类型断路器在什么情况下开始起作用断路器开启或关闭的条件断路器打开之后ALL 配置工作流程Hystrix 图形化 DashboardSpring Cloud 整合图解Hystr
2020-07-20 15:49:47 523
原创 Spring Cloud 学习笔记:OpenFeign 服务接口调用
文章目录OpenFeignFeign 和 OpenFeign 两者区别Spring Cloud 整合超时控制演示超时报错日志功能日志级别OpenFeignFeign 是一个声明式 WebService 客户端。使用 Feign 能让编写 Web Service 客户端更加简单。它的使用方法是定义一个服务接口然后在上面添加注解。Feign 也支持可插拔式的编码器和解码器。Spring Cloud 对 Feign 进行了封装,使其支持了 Spring MVC 标准注解和 HttpMessageConvert
2020-07-10 16:56:49 697
原创 Spring Cloud 学习笔记:Ribbon 负载均衡
文章目录RibbonRibbonSpring Cloud Ribbon 是基于Netflix Ribbon 实现的一套客户端负载均衡的工具。Ribbon 是 Netflix 发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon 客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出 Load Balancer 后面所有的机器,Ribbon 会自动的帮助你基于某种规则(如简单轮询、随机连接等)去连接这些机器。我们很容易使用 Ribbon 实现自定义的
2020-07-09 10:42:56 185
原创 Spring Cloud 学习笔记:三个服务注册中心异同点
文章目录CAP 原则CAP 原则CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值(等同于所有节点访问同一份最新的数据副本)。可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求(对数据更新具备高可用性)。分区容忍性(P):以实际效果而言,分区相当于对通信的时限要求
2020-06-04 08:38:51 247
原创 Spring Cloud 学习笔记:Consul 服务注册与发现
文章目录Consul安装 ConsulSpring Cloud 整合ConsulConsul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用Go语言开发。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网络,总之 Consul 提供了一种完整的服务网格解决方案。它具有很多优点。包括:基于...
2020-04-24 15:46:39 296
原创 Spring Cloud 学习笔记:Zookeeper 服务注册
文章目录Zookeeper选举机制原子广播Zookeeper 与 Kafaka 保持数据一致性的不同点数据一致性centos7 安装 ZookeeperSpring Cloud 整合ZookeeperZookeeper 是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后...
2020-04-08 21:33:41 260
原创 Spring Cloud 学习笔记:Eureka 服务注册与发现
文章目录服务治理服务注册与发现EurekaEureka Server & Eureka ClientSpring Cloud 整合服务提供者注册Eureka集群自我保护机制actutor 微服务信息完善Discovery 服务发现服务治理在传统的 rpc 远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理比较复杂,所以需要服务治理,管理服务于服务之间依赖关系,可以实现服务调用...
2020-04-02 21:17:01 515
原创 Spring Cloud 学习笔记:微服务
文章目录前言大纲Spring Cloud父项目:cloud2020dependencyManagement & dependencies前言以下内容是我在学习周阳老师的2020最新版 Spring Cloud(H版&alibaba)时的笔记,随缘更新。大纲Spring Cloud从最原始的开发开始,全部代码都放在一个 .java 文件下,到后来分三层架构 MVC 开发;...
2020-03-29 11:13:37 506
原创 Spring Boot 学习笔记:配置文件
文章目录配置文件YAML基本语法配置文件注入@PropertySource & @ImportResource & @BeanProfile配置文件加载位置配置文件Spring Boot 使用一个全局的配置文件,配置文件名是固定的:application.yml或者application.properties。配置文件的作用就是用来修改Spring Boot 自动配置的默认值。...
2020-03-24 22:06:35 124
原创 Spring Boot 学习笔记:Hello World
文章目录Spring Boot快速开始Spring Boot所有的技术框架的发展似乎都遵循了一条主线规律:从一个复杂应用场景衍生一种规范框架,人们只需要进行各种配置而不需要自己去实现它,这时候强大的配置功能成了优点;发展到一定程度之后,人们根据实际生产应用情况,选取其中实用功能和设计精华,重构出一些轻量级的框架;之后为了提高开发效率,嫌弃原先的各类配置过于麻烦,于是开始提倡"约定大于配置",进...
2020-03-21 21:46:24 262
原创 整合SSM框架
文章目录前言整合SSM框架前言想起之前在校园招聘会上找数据开发实习的时候问过一旁Java面试官一个很蠢的问题,“您能跟我讲讲SSM框架的整合是整合了这三个框架的什么吗”,“你问我这个问题还不如自己去百度”。场面一度十分尴尬,但想想当时应该是不会想到如今会走上Java这条路。整合SSM框架Spring:一个为解决企业级应用开发复杂性的开源框架,核心是IOC(控制反转)和AOP(切面编程)。...
2020-03-17 22:08:35 229
原创 初识Spring MVC框架
文章目录Spring MVC快速开始映射请求REST处理模型数据处理模型数据Spring MVCSpring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。快速开始在 web.xml 中配置 Dispatcher...
2020-03-08 14:20:13 682
原创 Java学习笔记:多线程
文章目录前言多线程编程进程与线程线程创建继承Thread类实现Runnable接口实现Callable接口线程状态生命周期停止线程线程休眠线程礼让线程强制执行线程优先级守护线程线程同步初识线程并发问题锁前言经常在Java岗位详情中有看到"熟悉io、多线程、集合等基础框架"的要求,而自己之前在学习SE部分的时候也只是简单的过了一遍,谈不上"熟悉"二字,所以趁着空闲的时候回过头来学习。以下内容是我...
2020-02-22 15:57:59 1574
原创 Java集合类:HashMap(基于JDK1.8)
文章目录前言HashMap哈希冲突数据结构存储流程成员变量序列化版本号默认初始化容量2的n次幂最大容量默认加载因子树形阈值为什么是8当链表的值小于6则会从红黑树转回链表树形最小容量其它变量构造方法成员方法增加方法 put转换红黑树 treeifBin扩容方法 resize删除方法 remove查找方法 get初始化容量设计前言以下内容是我在学习HashMap集合时候做的笔记总结,主要的学习视频...
2020-02-16 16:36:10 1754
原创 初识MyBatis框架
前言:以下内容是我在学习MyBatis框架时候做的笔记总结,学习视频为b站尚硅谷官方MyBatis p1-p66。如有错误请指正,谢谢。文章目录MyBatis快速开始接口式编程全局配置文件动态Sql缓存机制MyBatisMyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBat...
2020-02-13 16:18:40 256
原创 初识Spring框架
前言:以下内容是我在学习Spring框架时候做的笔记总结,更多的是如何去运用Spring,如有错误请指正,谢谢。SpringIOC(控制反转)AOP(切面编程)JDBCTemplate即Spring提供一种管理数据库的机制,可以直接在容器中配置JDBCTemplate完成对数据的访问。使用声明式事务。IOC控制反转,是指创建对象的控制权的转移,以前创建对象的主动权和时机是由自己把控...
2020-02-05 15:15:35 203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人