自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

豢龙先生

致力于java开发

  • 博客(115)
  • 收藏
  • 关注

原创 Nginx核心配置指令

Nginx的配置指令很多,为了方便理解和使用,可以按照其在代码中的分布,将其分为核心配置指令和模块配置指令两大类。核心配置指令分为进程核心配置指令和HTTP核心配置指令,进程核心配置指令主要是与Nginx自身软件运行管理及Nginx事件驱动架构有关的配置指令;HTTP核心配置指令是对客户端从发起HTTP请求、完成HTTP请求处理、返回处理结果,到关闭HTTP连接的完整过程中的各个处理方法进行配置的配置指令。模块配置指令是在每个Nginx模块中对所在模块的操作方法进行配置的配置指令。

2023-03-15 21:08:29 485

原创 Nginx编译及部署

Nginx中configure命令的常用编译配置参数,具有带“--with”前缀的编译配置参数的模块不会被默认编译,若要使用该功能模块,需要使用提供的编译配置参数进行编译配置。相反,具有带“--without”前缀的编译配置参数的模块都会被默认编译,如果不想使用某个功能模块,在进行编译置时添加带有“--without”前缀的参数即可。

2023-03-13 20:56:20 604

原创 SpringMVC的自定义配置和自动化配置

从WebMvcAutoConfiguration的类级注解@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)可以看出,自定义配置的WebMvcConfigurationSupport类会使得SpringBoot的MVC自动化配置失效,那么自定义配置的WebMvcConfigurationSupport将全面接管MVC的配置。那么怎样既可以保留SpringBoot关于MVC的自动化配置又能自定义扩展配置呢,有两种方式。

2023-03-05 19:53:07 424

原创 Spring Boot全局异常处理

ControllerAdvice (@RestControllerAdvice) 配合 @ExceptionHandler的全局异常处理会先于HandlerExceptionResolver执行,所以@ExceptionHandler注解方法中的异常可以由HandlerExceptionResolver处理(保证@ExceptionHandler注解方法不抛出异常才是正确的)适用于返回视图的请求,方法返回值如果不是ModelAndView而是字符串时,字符串会被解析成视图名。

2023-03-04 00:14:57 1031

原创 SpringMVC创建异步回调请求的4种方式

两个流程中客户端对Web容器的请求,都是同步的。因为它们在请求客户端时都处于阻塞等待状态,并没有进行异步处理。在Web容器部分,第一个流程采用同步请求,第二个流程采用异步回调的形式。通过异步处理,可以先释放容器分配给请求的线程与相关资源,减轻系统负担,从而增加了服务器对客户端请求的吞吐量。但并发请求量较大时,通常会通过负载均衡的方案来解决,而不是异步。首先要明确一点,同步请求和异步请求对于客户端用户来讲是一样的,都是需客户端等待返回结果。使用DeferredResult执行异步请求。

2023-02-17 22:50:11 1406

原创 使用Executors创建线程

可以使用 -Xss 指定创建每个线程需要的空间,默认是1024KB。newSingleThreadExecutor: 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO, LIFO, 优先级)执行。newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。

2023-02-12 20:41:33 448

原创 第一篇 RabbitMQ的5个核心概念介绍

RabbitMQ的5大核心概念ConnectionChannelQueueExchange。

2022-10-24 21:51:41 720

原创 SpringBoot集成WebSocket--------Spring方式集成(一)

二、配置1、WebSocketConfigurer配置器2、@EnableWebSocket注解(1)注解引入一个配置类DelegatingWebSocketConfiguration.class(2)DelegatingWebSocketConfiguration配置类会被容器自动加载,同时会注入容器中所有的WebSocketConfigurer实现到configurers中;同时registerWebSocketHandlers()方法会遍历configurers并回调所有WebSocketC

2022-06-29 23:47:29 5016

原创 SpringSecurity------Session Management(十二)

有时,总是创建会话是很有价值的,我们可以通过配置ForceEagerSessionCreationFilter来完成:二、Detecting Timeouts可以配置Spring Security来检测无效会话ID的提交,并将用户重定向到适当的URL,这是通过会话管理(session-management)实现的:使用上面的配置来检测会话超时,如果用户在登出之后没有关闭浏览器的情况下重新登录,可能会报告一个错误。这是因为执行了登出,会话失效时存储在浏览器的Cookie不会被清除,而且会随着后续请求重新

2022-06-21 20:55:09 2299

原创 SpringSecurity------Persisting Authentication(十一)

当用户第一次请求受保护的资源时,客户端HTTP请求的汇总:1、未经认证的用户请求受保护资源2、用户提交他们的用户名和密码4、后续请求包括会话cookie,该cookie用于在会话剩余时间对用户进行身份验证二、SecurityContextRepositorySpring Security使用SecurityContextRepository关联登录用户和登录之后发往服务器的请求HttpSecurityContextRepository是SecurityContextRepository的默认实现,它

2022-06-20 21:44:18 781

原创 SpringSecurity------ Username/Password Authentication(九)

最常见的用户身份认证就是使用用户名密码,Spring Security为使用用户名和密码进行身份验证提供了全面的支持。 Spring Security提供了以下内置机制来从HttpServletRequest读取用户名和密码(1)在未经过认证的情况下向/private发送了一个请求(2)FilterSecurityInterceptor通过抛出AccessDeniedException异常通知应用程序拒绝未经身份验证的请求(3)由于检测到用户没有经过身份认证,ExceptionTranslationFil

2022-06-18 18:25:24 2484

原创 SpringSecurity------Security Expressions(六)

SpringSecurity-----Spring Data Integration

2022-06-16 19:59:08 185

原创 SpringSecurity------HTTP Response Headers(四)

Spring Security提供了一组与安全性相关的默认HTTP响应头:注意:Strict-Transport-Security 只适用于HTTPS Requests如果一个登录用户访问了敏感信息,然后登出,我们不希望非法用户通过点击回退按钮去浏览敏感信息,为了保护用户的内容安全,Spring Security默认禁用缓存。Cache Control请求头需要如下设置:如果应用程序提供了自己的缓存控制头,Spring Security的Cache Control默认设置就会失效,这样应用程序就可以缓存

2022-06-15 23:12:59 1898

原创 SpringSecurity------PasswordEncoder(二)

SpringSecurity密码存储PasswordEncoder接口

2022-06-11 20:24:46 1084

原创 第四篇 JDK11 Collectors预置的收集器方法

java.util.stream.Collectors修饰符和类型 方法 描述 static <T>Collector<T,​?,​Double> averagingDouble​(ToDoubleFunction<? super T>mapper) 返回求输入Double类型元素平均值的Collector static <T>Collector<T,​?,​Double> ...

2022-03-13 19:01:07 866

原创 第三篇 JDK11预置的函数式接口

JDK11在java.util.function包下预置的所有函数式接口接口 描述 BiConsumer<T,​U> 表示接受两个输入参数并且不返回结果的操作。 BiFunction<T,​U,​R> 表示接受两个参数并生成结果的函数。 BinaryOperator<T> 表示对两个相同类型的操作数的操作,产生与操作数相同类型的结果。 BiPredicate<T,​U>

2022-03-11 23:38:13 7194

原创 Java主键ID生成算法---Snowflake算法

snowflake 算法是 twitter 开源的分布式 id 生成算法,采用 Scala 语言实现,是把一个 64 位的 long 型的 id,1 个 bit 是不用的,用其中的 41 bit 作为毫秒数,用 10 bit 作为工作机器 id,12 bit 作为序列号。 1 bit:不用,为啥呢?因为二进制里第一个 bit 为如果是 1,那么都是负数,但是我们生成的 id 都是正数,所以第一个 bit 统一都是 0。 41 bit:表示的是时间戳,单位是毫秒。41 bit 可以表示的数字多

2021-08-17 11:46:31 548

原创 第二篇 Lambda表达式

Lambda表达式可以让我们简洁的表示一个行为或是传递代码。现在我们可以把Lambda表达式看作匿名功能,他基本上就是没有声明名称的方法,但和匿名类一样,它也可以作为参数传递给一个方法。我们会展示如何构建Lambda,他的使用场所,以及如何利用它使代码更简洁。我们还会介绍一些新的东西,如类型推断和Java8API中重要的新接口。我们还会介绍方法引用,这是一个常常和Lambda表达式联用的有用的新功能。2.1.Lambda介绍可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式:他没有.

2021-07-06 23:36:05 271

原创 第一篇 通过行为参数化应对不断变化的需求

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-07-04 01:42:43 179

原创 第一节 Minio保护数据免受硬件故障和无声数据损坏的纠删码Erasure-Code

第一节 第一节 Minio保护数据免受硬件故障和无声数据损坏的纠删码Erasure-Code什么是纠删码Erasure-Code?什么是位衰减bit rot保护?驱动器(盘)如何使用纠删码?Erasure-Code介绍Minio使用纠删码erasure code和checksum来保护数据免受硬件故障和无声数据损坏。 即便您丢失一半数量(N/2)的硬盘,您仍然可以恢复数据。什么是纠删码Erasure-Code?纠删码是一种恢复丢失和损坏数据的数学算法, Minio采用里德-所罗门码将对象分片为数据和奇

2021-04-10 10:51:20 1231 1

原创 C Primer Plus------第三章 数据和C

C Primer Plus------第三章 数据和C一级目录二级目录三级目录一级目录二级目录三级目录

2021-01-05 19:57:51 132

原创 C Primer Plus------第二章 C语言概述

C Primer Plus------第二章 C语言概述一级目录二级目录三级目录一级目录二级目录三级目录

2021-01-04 20:30:49 156

原创 C Primer Plus------第一章 初识C语言

C Primer Plus------第一章 初识C语言1.1 C语言的起源1.2 选择C语言的理由1.3 C语言的应用范围1.4 计算机能作什么1.5 高级计算机语言和编译器1.6 语言标准1.7 使用C语言的7个步骤1.8 编程机制1.9 本书的组织结构1.10 本书约定1.11 本章小结1.1 C语言的起源1.2 选择C语言的理由1.3 C语言的应用范围1.4 计算机能作什么1.5 高级计算机语言和编译器1.6 语言标准1.7 使用C语言的7个步骤1.8 编程机制1.9 本书的组

2021-01-03 18:23:09 209

原创 SpringSecurity------WebSecurityConfigurerAdapter配置适配器类

SpringSecurity------WebSecurityConfigurerAdapter配置适配器一、属性一、属性

2020-12-30 22:31:38 1092 2

原创 SpringSecurity------ObjectPostProcessor

SpringSecurity------ObjectPostProcessor一级目录二级目录三级目录一级目录二级目录三级目录

2020-12-30 21:34:22 787 2

原创 SpringSecurity------HttpSecurityConfiguration配置类

SpringSecurity------HttpSecurityConfiguration配置类一、WebSecurityConfiguration是怎样被加载的二、WebSecurityConfiguration主要做了什么三、WebSecurityConfiguration的源码分析1、属性字段2、核心方法3、使用@Autowired注入了一些Bean4、使用@Bean初始化一些Bean一、WebSecurityConfiguration是怎样被加载的二、WebSecurityConfigurati

2020-12-27 23:28:15 2041 4

原创 SpringSecurity------InitializeAuthenticationProviderBeanManagerConfigurer类

SpringSecurity------InitializeAuthenticationProviderBeanManagerConfigurer类一、作用二、源码一、作用二、源码/* * Copyright 2002-2019 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except

2020-12-25 22:35:57 150

原创 SpringSecurity------InitializeUserDetailsBeanManagerConfigurer类

SpringSecurity------InitializeUserDetailsBeanManagerConfigurer类一、作用二、源码分析一、作用二、源码分析package org.springframework.security.config.annotation.authentication.configuration;import org.springframework.context.ApplicationContext;import org.springframework.co

2020-12-25 22:29:57 332

原创 SpringSecurity------AuthenticationConfiguration配置类

SpringSecurity------AuthenticationConfiguration配置类一、AuthenticationConfiguration主要做了什么二、AuthenticationConfiguration是怎样被加载的三、WebSecurityConfiguration的源码分析1、属性字段2、注入了一些Bean3、输出了一些Bean4、一些内部类5、关键方法6、关键注解@Import(ObjectPostProcessorConfiguration.class)一、Authent

2020-12-25 21:53:12 2286 1

原创 SpringSecurity------AutowireBeanFactoryObjectPostProcessor类

SpringSecurity------AutowireBeanFactoryObjectPostProcessor类一级目录二级目录三级目录一级目录二级目录三级目录

2020-12-25 15:41:25 298

原创 SpringSecurity------WebSecurity创建FilterChainProxy

SpringSecurity------FilterChainProxy的创建过程一级目录二级目录三级目录一级目录二级目录三级目录

2020-12-24 17:19:26 289 1

原创 SpringSecurity------WebSecurityConfiguration配置类

SpringSecurity------WebSecurityConfiguration配置类一、WebSecurityConfiguration主要做了什么二、WebSecurityConfiguration是怎样被加载的三、WebSecurityConfiguration的源码分析1、属性字段2、关键方法setFilterChainProxySecurityConfigurer()和springSecurityFilterChain()3、注入了一些Bean4、输出了一些Bean4、重写的方法5、一个内

2020-12-24 17:19:22 3463

原创 SpringSecurity------ Storage Mechanisms(十)

SpringSecurity------ Authentication Mechanisms (八)Authentication Mechanisms(鉴权机制)Authentication Mechanisms(鉴权机制)Username and Password - 使用用户名密码鉴权。OAuth 2.0 Login - 基于OpenID Connect的OAuth2.0登录和非标准OAuth2.0登录。SAML 2.0 Login - SAML2.0登录。Central Au

2020-12-10 17:00:00 279

原创 SpringSecurity------ Servlet Authentication Architecture (八)

SpringSecurity------ Authentication (七)一、Authentication (鉴权)二、Architecture Components1、SecurityContextHolder2、SecurityContext1、1、1、1、一、Authentication (鉴权)Spring Security提供为Authentication提供了综合性的支持.。接下来我们讨论这部分的内容。Architecture Components(构件)以下是在Servlet au

2020-12-09 17:45:10 752

原创 SpringSecurity------Filters Architecture(七)

SpringSecurity------ The Big Picture (六)一、A Review of Filters二、DelegatingFilterProxy三、FilterChainProxy四、SecurityFilterChain五、Security Filters六、Handling Security Exceptions一、A Review of FiltersSpring Security’s Servlet support is based on Servlet Filters,

2020-12-09 11:17:20 313

原创 SpringSecurity------Hello Spring Security (五)

SpringSecurity------Hello Spring Security(五)Hello Spring Security一、Spring Boot Auto Configuration1、Spring Boot automatically2、Spring Boot is not configuring much, but it does a lot. A summary of the features followsHello Spring SecuritySpring Security in

2020-12-09 10:28:24 166

原创 SpringSecurity------Spring Security Crypto(五)

Spring Security Crypto模块支持对称加密、密钥生成和密码编码, 该代码作为核心模块的一部分分发,但不依赖于任何其他Spring Security(或Spring)代码。Encryptors提供了构造对称加密器的工厂方法,使用这个类可以创建ByteEncryptor用来加密byte[]数据,还可以构造TextEncryptor来加密文本字符串,Encryptors是线程安全的。使用Encryptors.stronger()工厂方法可以创建一个BytesEncryptor实例该加密方法使用

2020-12-09 09:54:01 2098

原创 SpringSecurity------Security相关的HTTP响应头(三)

SpringSecurity------Security HTTP Response Headers(三)二、Security HTTP Response Headers二、Security HTTP Response Headers#Security HTTP Response HeadersThere are many HTTP response headers that can be used to increase the security of web applications.This

2020-12-08 23:12:04 1187

原创 SpringSecurity------CSRF跨站请求伪造(三)

SpringSecurity------Protection Against Exploits(二)一、Cross Site Request Forgery (CSRF)二、Security HTTP Response HeadersSpring Security provides protection(保护) against common exploits(漏洞). Whenever possible, the protection is enabled by default.一、Cross Site

2020-12-07 17:44:44 648 1

原创 SpringSecurity------引入方式和配置(一)

SpringSecurity的引入方式和配置方式

2020-12-07 17:39:11 1542

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除