学习笔记

SpringSecurity代码实现JWT接口权限授予与校验

通过笔者前两篇文章的说明,相信大家已经知道JWT是什么,怎么用,该如何结合Spring Security使用。那么本节就用代码来具体的实现一下JWT登录认证及鉴权的流程。 一、环境准备工作 建立Spring Boot项目并集成了Spring Security,项目可以正常启动 通过controller写一个HTTP的GET方法服务接口,比如:“/hello” 实现最基本的动态数据验证及权限分配,即实现UserDetailsService接口和UserDetails接口。这两个接口都是向Spring Security提供用户、角色、权限等校验信息的接口 ...

从BWM生产学习工厂模式

 工厂模式应用非常之广,在JDK底层源码以及各大主流框架中随处可见,一般以Factory结尾命名的类,比如Mybatis中的SqlSessionFactory,Spring中的BeanFactory等,都是工厂模式的典型代表。...

Java 大黑话讲解设计模式 -- UML类图

目录 1、啥是UML类图? 2、UML类图有啥用? 3、正式理解UML类图 4、使用idea画第一个UML类图 5、类之间的关系图【必须牢记】 6、类之间的关系 6.1、依赖 6.2、泛化 6.3、实现 6.4、关联 6.5、聚合 6.6、组合 7、简单总结类之间的六种关系 前言 关于UML类图的这篇文章,我觉得把它放在设计模式专栏的篇首最为合适,因为在学习设计模式的时候,经常会遇到有关UML类图,没有去专门学过的童鞋肯定会感觉很复杂。学到后面,发现不掌握UML类图,对设计模式或者某一个框架没有整体的把控。所以学好UML类图,你将会更加有自信! ...

基于 HTML5 + WebGL 的宇宙(太阳系) 3D 可视化系统

 前言近年来随着引力波的发现、黑洞照片的拍摄、火星上存在水的证据发现等科学上的突破,以及文学影视作品中诸如《三体》、《流浪地球》、《星际穿越》等的传播普及,宇宙空间中那些原本遥不可及的事物离我们越来越近,人们对未知文明的关注和对宇宙空间的好奇达到了前所未有的高度。站在更高的立足点上,作为人类这个物种中的一员,我们理所应当对我们生活的星球、所在的太阳系有一定的认识,对 8 大行星各自的运行轨道、质量、资源存储量甚至是地形有一定的了解。...

关于盘点和总结的那点事儿

本月的功能在踉跄中勉强上线了,这个月有实验的味道,有摸索的代价,有分工和衔接上的问题,有技术储备方面的不足,有业务梳理方面的欠缺,也有个人能力和意识上的不足,梳理整个开发流程,目前存在的几大问题: 一、代码质量问题: 描述分析 1.性能层面:   从综合维度看,代码质量好坏取决于开发人员整体的编程经验:比如操作系统,设计模式,数据结构和算法,网络原理,数据库,前端等等因素。   就目前系统整体上看,性能可能会出现的地方,从优先级权重来排列,主要集中在: 数据库优化技术偏弱。 不看执行计划 对索引的理解比较浅,没用好索引 ...

ASP.NET Core 中的 ObjectPool 对象重用(一)

 对象池是一种设计模式,一个对象池包含一组已经初始化过且可以使用的对象,而可以在有需求时创建和销毁对象。池的对象可以从池中取得对象,对其进行操作处理,并在不需要时归还给池子而非直接销毁他,他是一种特殊的工厂对象。...

深入理解.NET Core的基元(三) - 深入理解runtimeconfig.json

原文:Deep-dive into .NET Core primitives, part 3: runtimeconfig.json in depth 作者:Nate McMaster 译文:深入理解.NET Core的基元(三) - 深入runtimeconfig.json 译者: Lamond Lu 前情回顾# 深入理解.NET Core的基元(一):deps.json, runtimeconfig.json, dll文件 深入理解.NET Core的基元(二):共享框架 深入理解.NET Core的基元(三):深入理解runtimeconfig.json ...

[ASP.NET Core 3框架揭秘] 配置[1]:读取配置数据[上篇]

 到“配置”二字,我想绝大部分.NET开发人员脑海中会立即浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置定义在这两个XML格式的文件之中。到了.NET Core的时代,很多我们习以为常的东西都发生了改变,其中就包括定义配置的方式。总的来说,新的配置系统显得更加轻量级,并且具有更好的扩展性,其最大的特点就是支持多样化的数据源。我们可以采用内存的变量作为配置的数据源,也可以将配置定义在持久化的文件甚至数据库中。在对配置系统进行系统介绍之前,我们先从编程的角度来体验一下全新的配置读取方式。...

Stack Overflow 上 370万浏览量的一个问题:如何比较 Java 的字符串?

在逛 Stack Overflow 的时候,发现了一些访问量像喜马拉雅山一样高的问题,比如说这个:如何比较 Java 的字符串?访问量足足有 370万+,这不得了啊!说明有很多很多的程序员被这个问题困扰过。 PS:系列文章回顾:《Stack Overflow 上250万浏览量的一个问题:你对象丢了》 我们来回顾一下提问者的问题: 截止到目前为止,我一直使用“==”操作符来比较字符串,直到程序出现了一个 bug,需要使用 .equals() 方法来解决。这是为什么呢?“==”操作符和 .equals() 方法之间有什么区别呢? ...

Spring Boot 注解之ObjectProvider源码追踪

 最近依旧在学习阅读Spring Boot的源代码,在此过程中涉及到很多在日常项目中比较少见的功能特性,对此深入研究一下,也挺有意思,这也是阅读源码的魅力之一。这里写成文章,分享给大家。自动配置中的ObjectProvider...

Head First设计模式——模板方法模式

前言:本篇我们讲解模板方法模式,我们以咖啡和茶的冲泡来学习模板方法。关于咖啡另一个设计模式例子也以咖啡来讲解,可以看下:Head First设计模式——装饰者模式 废话不多说,开始进入模板方法模式。 一、冲泡咖啡和茶 冲泡咖啡的步骤: (1)把水烧开 (2)用开水冲泡咖啡 (3)把咖啡到进杯子 (4)加糖和牛奶 冲泡茶的步骤 (1)把水烧开 (2)用开水浸泡茶 (3)把茶到进杯子 (4)加柠檬 实现冲泡咖啡和茶的两个类 1 2 3 4 5 6 7 8 9 10 11 12 ...

二叉查找树的平衡(DSW算法)

 树适合于表示某些领域的层次结构(比如Linux的文件目录结构),使用树进行查找比使用链表快的多,理想情况下树的查找复杂度O(log(N)),而链表为O(N),但理想情况指的是什么情况呢?一般指树是完全平衡的时候。哪最坏的情况是什么呢?就是树退化为链表的时,这时候查找的复杂度与链表相同。就失去了树结构的意义。所以树的平衡是非常重要的,这一节我们主要讨论树的平衡问题。...

关于HashMap容量的初始化,还有这么多学问。

在《HashMap中傻傻分不清楚的那些概念》文章中,我们介绍了HashMap中和容量相关的几个概念,简单介绍了一下HashMap的扩容机制。 文中我们提到,默认情况下HashMap的容量是16,但是,如果用户通过构造函数指定了一个数字作为容量,那么Hash会选择大于该数字的第一个2的幂作为容量。(3->4、7->8、9->16) 本文,延续上一篇文章,我们再来深入学习下,到底应不应该设置HashMap的默认容量?如果真的要设置HashMap的初始容量,我们应该设置多少? 为什么要设置HashMap的初始化容量 ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程