spi~在插件开发过程中的使用
spi是原生java的组件,通过META-INF/services目录进行注册,通过ServiceLoader进行加载,一般可以用在组件开发中,你在公用组件中封装好逻辑,将个性化的部分抽象出一个接口,接口通过spi的方式进行加载,在外部开发人员引用你的组件之后,通过实现接口来扩展个性化的功能,再通过 ...
在 SpringBoot 项目中简单实现 JWT 验证
使用 SpringBoot 提供 api 的时候,我更喜欢使用 jwt 的方式来做验证。网上有会多 Spring Security 整合 jwt 的,也有 Shiro 整合 jwt 的,感觉有点复杂。这里分享一下自己在项目中的简单实现。 依赖包 除了 SpringBoot 基本的依赖,需要一个生成 ...
京东一面:MySQL 中的 distinct 和 group by 哪个效率更高?问倒一大遍。。
先说大致的结论(完整结论在文末): 在语义相同,有索引的情况下:group by和distinct都能使用索引,效率相同。 在语义相同,无索引的情况下:distinct效率高于group by。原因是distinct 和 group by都会进行分组操作,但group by可能会进行排序,触发fil ...
HashMap源码分析 (基于JDK1.8)
基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 此实现假定哈希函数将元素适当地分布在各桶之间,... ...
Amazon RDS 教程_编程入门自学教程_菜鸟教程-免费教程分享
教程简介 Amazon RDS初学者教程 - 从基本到高级概念的简单简单步骤学习Amazon RDS,其中包括概述,环境,接口,数据库实例,数据库存储,MS SQL功能,MS SQL创建数据库,MS SQL连接到数据库, MS SQL DB导出导入,带有SSL的MS SQL DB,MS SQL DB ...
3.SpringSecurity+登录功能+jwt校验过滤器+redis配置
SpringSecurity+登录功能+jwt校验过滤器+redis配置 一、思路分析 1.登录 ①自定义登录接口 调用ProviderManager的方法进行认证 如果认证通过生成jwt 把用户信息存入redis中 ②自定义UserDetailsService 在这个实现类中去查询数据库 注意配置 ...
CICS教程_编程入门自学教程_菜鸟教程-免费教程分享
教程简介 CICS快速指南 - 从CICS概述,环境,基本术语,Nucleus,事务,COBOL基础知识,BMS,MAP,接口块,伪编程,辅助密钥,文件处理,错误处理,控制操作,简单而简单的步骤学习CICS临时存储,互通,状态代码。 CICS代表客户信息控制系统。 CICS由IBM于1968年开发。 ...
基于arthas热更新class脚本
1. 概述 本地更新脚本是基于arthas工具的retransform命令热替换class,此方法用于在不重启项目的前提下,替换更新的class,如关键类添加打印日志,排查线上问题 但是arthas工具的命令稍显复杂,有那个时间还不如重新部署,因此需要一个可以快速替换的工具来进行替换 2. 方法一: ...
针对单一key加读写锁
一、什么是读写锁 读写锁是JDK1.5提供的一个工具锁,适用于读多写少的场景,将读写分离,从而提高并发性。 二、读写锁的特点 读锁是共享锁,写锁是排他锁,读锁和写锁不能同时存在; 读锁不能升级为写锁; 写锁可以降级为读锁; 三、锁的本质 锁的本质就是锁住一块资源而不是一块代码. 在常见的一些代码实现 ...
亚马逊商城入门教程_编程入门自学教程_菜鸟教程-免费教程分享
教程简介 亚马逊商城快速指南 - 从简单和简单的步骤开始学习亚马逊商城,从基本到高级概念,包括为什么选择亚马逊?,亚马逊优势,帐户类型,销售什么?,产品列表,费用,帐户设置,购买盒,运输方式,列出新产品,定价工具,获取最高利润,价格计算器,税务处理,运输流程,亚马逊卖家中心,管理库存,创建报告,管理 ...
【踩坑记录】@Transactional注解回滚不生效问题
@Transactional属于是Spring的常用事务处理注解了,最近在开发时偶然发现这个东西竟然不是100%生效的。 问题重现: 测试一个批处理方法,方法上加了@Transactional后执行,因为加了事务处理注解,没怎么关注SQL执行顺序(反正对事务来说都是原子性的),debug过程发现Mo ...
我是如何用CAP和BASE两个基础理论卷死其他组员的?
本文内容整理自博学谷狂野架构师 CAP 定理又被称作布鲁尔定理,是加州大学的计算机科学家布鲁尔在 2000 年提出的一个猜想。2002 年,麻省理工学院的赛斯·吉尔伯特和南希·林奇发表了布鲁尔猜想的证明,使之成为分布式计算领域公认的一个定理。 布鲁尔在提出CAP猜想时并没有具体定义 Cons ...