自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

呜呼哈

怎么大风越狠 我心越荡 我会变成巨人 踏着力气 踩着梦

  • 博客(61)
  • 资源 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 Linux procps-ng - top

程序或窗口名称,取决于显示模式当前时间和自上次启动以来的时间长度用户总数系统负载(1 分钟、5 分钟、15 分钟内的平均进程数),对于单核CPU 1.0表示满负载摘要区交互命令在全屏模式和alternate-display模式下始终可用。它们影响显示的起始行,并确定消息和提示的位置。这些命令总是只影响“当前”窗口/字段组。C:显示滚动坐标切换切换一个信息消息,当消息行没有被使用时会显示。l:负载平均值/正常运行时间切换。

2023-11-19 00:31:14 609

转载 跨域资源共享 CORS 详解

CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS通信与同源的AJAX通信没有差别,代码完全一样。浏览器一旦发现AJAX请求跨源,就会自动添加一些附加的头信息,有时还会多出一次附加的请求,但用户不会有感觉。因此,实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信。

2023-10-11 23:16:04 115

原创 Linux网络监控工具 - iftop

iftop 是一个基于 libpcap 库的网络流量监控工具。它通过监听指定网络接口上的数据包,并分析这些数据包的源地址、目标地址、源端口、目标端口、协议等信息,从而实时显示网络流量的相关统计信息。

2023-10-09 23:33:17 2420 3

原创 Linux网络监控工具 - nethogs

nethogs是一个基于命令行的网络监控工具,用于实时监视每个进程的网络流量。它可以显示每个进程使用的带宽、连接数和数据包数量等信息。

2023-10-08 10:21:20 1213

原创 Duration.parse格式说明

Duration.parse是Java 8及以上版本中的一个方法,用于将字符串表示的时间段解析为Duration对象。时间单位(Time Units):使用大写字母表示时间单位,包括年(Y)、月(M)、周(W)、天(D)、小时(H)、分钟(M)和秒(S)。上述代码将字符串"PT2H30M"解析为一个Duration对象,并输出该对象的字符串表示和总分钟数。Duration对象表示的时间段最大单位为天(24小时),不能表示更长的时间段。字符串中的字母大小写敏感,必须使用大写的P、T和H/M/S。

2023-08-02 14:30:45 556 1

翻译 location匹配规则

介绍了Nginx服务器中的location块,location块根据请求的URI配置Nginx服务器的行为。

2023-05-22 18:32:49 107

转载 MySQL对于相同名称用户但host不同的登陆选择

有时候我们会发现有创建多个相同名称的用户,但是host给的不是相同的,最普遍的是有的小伙伴习惯性的创建 root 用户,系统有默认的 root@‘127.0.0.1’ ,而自己再去创建个 root@‘%’ 或 root@'192.168.20.%'类似这种的,那么存在多个相同名称的了,mysql在登录时候会选择哪个用户来进行登陆呢?记得有块官方文档介绍这一块的,一时没找到,感兴趣小伙伴自己去找下。大致意思应该如下:服务器使用与客户端主机名和用户名相匹配的第一行记录进行授权。

2023-04-03 14:42:58 592

转载 SpringSession

在开始spring-session揭秘之前,先做下热脑(活动活动脑子)运动。为什么要spring-session比较traditional-session方案和spring-session方案JSR340规范与spring-session的透明继承spring-session提供集群环境下HttpSession的透明集成。spring-session的优势在于开箱即用,具有较强的设计模式。

2022-11-06 23:28:56 6065

原创 反编译SpringBoot项目

项目缺失源码,但服务器上有项目的war包,然后需要通过war包反编译出项目源码进行项目的二次开发

2022-10-30 15:05:01 1942

翻译 Jackson 2.12中多态性

在本教程中,我们将探索如何使用Jackson库中基于推理的多态特性。

2022-09-18 17:31:09 507

原创 搭建 Sentry 服务

CentOS7 部署 Sentry 服务

2022-09-17 12:00:17 1459 1

翻译 Jackson Annotation 示例

在本教程中,我们将深入研究 Jackson Annotations。我们将了解如何使用现有注解,如何创建自定义注解,最后如何禁用它们

2022-09-07 23:33:17 198

原创 docker swarm 部署 sentry9.1.2

docker swarm 部署 sentry 9.1.2

2022-09-05 00:18:23 777

翻译 Jackson ObjectMapper 简介

本教程重点介绍如何理解 Jackson ObjectMapper 类,以及如何将 Java 对象序列化为 JSON,以及如何将 JSON 字符串反序列化为 Java 对象ObjectMapper类的另一个基本功能是注册自定义序列化程序和反序列化程序的能力。在输入或输出JSON响应在结构上与必须序列化或反序列化的Java类不同的情况下,自定义序列化程序和反序列化程序非常有用。super(t);...

2022-08-31 00:11:09 521

原创 Docker 部署 RabbitMQ 集群

为了保证线上环境RabbitMQ的高可用性,需要部署一套集群环境。RabbitMQ集群主要有两方面的优势:高可用、高性能;高可用就是保证其中部分RabbitMQ节点崩溃或停机的情况下应用程序不受影响,高性能就是对RabbitMQ的横向扩展,支持更大量的消息通信。

2022-08-21 01:13:13 1850

原创 数字精度问题

前端JS不支持Long类型数字,返回给前端Long类型数据时需要转换为Stringmongodb中默认数字类型也是浮点数类型,在查询数据时要注意属性类型

2022-08-17 00:06:16 328

原创 PowerDesigner处理表名数字脚本

处理表名数字

2022-08-02 14:41:49 100

原创 Redis按Key前缀删除

redis-cli --scan --pattern "prefix::*" | xargs -L 2000 redis-cli del

2022-05-31 17:06:44 572

原创 NFS(Network File System)

一个更好的教材NFS是什么NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上相当便利;NFS一般用来存储共享视频,图片等静态数据NFS原理NFS本身的服务并没有提供数据传递的协议,而是通过使用RPC(远程过程调用 Remote Procedure Cal

2022-05-17 19:30:00 356 1

原创 Spring Security启动流程

SecurityConfigurer用来配置SecurityBuilder的超类。所有SecurityConfigurer首先调用其init(SecurityBuilder)方法。再调用了所有init(SecurityBuilder)方法之后,调用每个configure(SecurityBuilder)方法。public interface SecurityConfigurer<O, B extends SecurityBuilder<O>> { /** 初始化Se.

2022-04-26 18:12:01 973

原创 Servlet 身份验证体系结构(源码)

参考BlogAuthentication表示身份验证请求的令牌,或AuthenticationManager.authenticate(Authentication)方法处理请求后经过身份验证的主体的令牌。一旦请求通过身份验证,身份验证通常会存储在由SecurityConextHolder通过所使用的身份验证机制管理的线程本地SecurityContext中。无需使用Spring Security的任何一种身份验证机制,即可通过创建一个身份验证实例并使用以下代码来实现显式身份验证:Securit

2022-04-26 17:17:47 288

原创 虚拟机VMware3种网络模式(桥接、NAT、Host-only)的工作原理

Bridged(桥接模式)在桥接模式下,VMware虚拟出来的操作系统就像是局域网中的一独立的主机,它可以访问网内任何一台机器不过你需要多于一个的IP地址,并且需要手工为 虚拟系统配置IP地址子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。如果你想利用VMware在局域网内新建一个虚拟服务器,为局域网用户提供网络服务,就应该选择桥接模式NAT(网络地址转换模式)使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网也就是说

2022-04-25 22:12:08 613

原创 Nginx命令行参数

Nginx命令行参数可以通过 nginx -h 获取:$ nginx -hnginx version: nginx/1.21.5Usage: nginx [-?hvVtTq] [-s signal] [-p prefix] [-e filename] [-c filename] [-g directives]Options: -?,-h : this help -v : show version and exit -V

2022-04-19 21:01:50 4606

原创 CPU架构

指令集计算机指令就是指挥机器工作的指示和命令,程序就是一系列按一定顺序排列的指令,执行程序的过程就是计算机的工作过程。指令集,就是CPU中用来计算和控制计算机系统的一套指令的集合,而每一种新型的CPU在设计时就规定了一系列与其他硬件电路相配合的指令系统。而指令集的先进与否,也关系到CPU的性能发挥,它也是CPU性能体现的一个重要标志。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效的工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分CISC(复杂指令集)

2022-04-16 22:41:36 2881

翻译 认证事件(Authentication Events)

对于每个成功或失败的身份验证,将分别触发一个 AuthenticationSuccessEvent 或 AbstractAuthenticationFailureEvent 。要侦听这些事件,你必须首先发布一个 AuthenticationEventPublisher,Spring Security 的 DefaultAuthenticationEventPublisher 可能会做得很好:@Beanpublic AuthenticationEventPublisher authenticationE

2022-04-05 17:27:57 1267

翻译 匿名认证(Anonymous Authentication)

通常认为采用“默认拒绝”是一种良好的安全实践,在这种情况下,您可以明确指定允许的内容,并禁止其他内容。定义未经身份验证的用户可以访问的内容也是类似的情况,特别是对于 web 应用程序。许多站点要求用户必须对除了一些 url (例如主页和登录页面)以外的任何内容进行身份验证。在这种情况下,为这些特定 url 定义访问配置属性比为每个安全资源定义访问配置属性更容易。换句话说,有时候说 role_something 是默认需要的,并且只允许该规则的某些异常,比如用于应用程序的登录、注销和主页。您还可以从过滤器链中

2022-04-05 17:11:38 4088

翻译 Remember-Me

Remember-me 或者 persistent-login 身份验证是指网站能够在会话之间记住主体的身份。这通常是通过向浏览器发送 cookie 来实现的,在以后的会话中检测到 cookie 并完成自动登录。Spring Security 提供了执行这些操作所需的挂钩,并有两个具体的 remember-me 实现。一种使用散列来保持基于 cookie 的令牌的安全性,另一种使用数据库或其他持久存储机制来存储生成的令牌。注意,这两个实现都需要 UserDetailsService。如果您使用的身份.

2022-04-05 16:50:44 149

翻译 会话管理.

检测超时(Detecting Timeouts)您可以配置 SpringSecurity 来检测无效会话 ID 的提交,并将用户重定向到适当的 URL。这是通过会议管理部分实现的:@Overrideprotected void configure(HttpSecurity http) throws Exception{ http .sessionManagement(session -> session .invalidSessionUrl("/i

2022-04-05 10:52:35 332

翻译 用户密码的存储机制

In-Memory AuthenticationSpring Security 的 InMemoryUserDetailsManager 实现了 UserDetailsService,以支持存储在内存中的基于用户名/密码的身份验证。InMemoryUserDetailsManager 通过实现 UserDetailsManager 接口提供对 UserDetails 的管理。当 Spring Security 配置为接受用户名/密码进行身份验证时,它使用基于 UserDetails 的身份验证。在这个示

2022-04-05 08:00:00 526

翻译 用户名/密码认证

表单登录让我们来看看基于表单的登录在 Spring Security 中是如何工作的。首先,我们看到如何将用户重定向到登录表单。该图构建了我们的 SecurityFilterChain 图。首先,用户向未授权的资源/私有发出未经身份验证的请求。Spring Security 的 FilterSecurityInterceptor 通过抛出 AccessDeniedException 表示拒绝未经身份验证的请求。由于用户没有经过身份验证,ExceptionTranslationFilter 启

2022-04-05 00:59:55 8167

翻译 Servlet 身份验证体系结构

SecurityContextHolder在Spring Security的身份验证模型的核心是SecurityConextHolder。它包含SecurityContext。SecurityContextHolder 是 Spring Security 存储被验证者的详细信息的地方。Spring Security 不关心 SecurityContextHolder 是如何填充的。如果它包含一个值,则将其用作当前经过身份验证的用户。表明用户已通过身份验证的最简单方法是直接设置 SecurityCon

2022-04-05 00:26:58 275

翻译 Spring Security 的体系结构

回顾 FiltersSpring Security 的 Servlet 支持是基于 Severlet 过滤器的,因此通常先看看过滤器的角色是有帮助的。下面的图片显示了单个 HTTP 请求的处理程序的典型分层。客户机向应用程序发送一个请求,容器创建一个 FilterChain(过滤器链),其中包含过滤器和Servlet,这些过滤器和Servlet应根据请求URI的路径处理HttpServletRequest。一个Servlet可以处理单个HttpServletRequest和HttpServletRes

2022-04-04 18:16:53 232

原创 JavaScript中的函数

一等公民–函数在Javascript中函数也是一等公民,函数可以独立存在,声明后就可以直接使用。let animal = {"name": "animal"};function eat(animal) { console.log(animal.name + " is eating")}eat(animal);// animal is eating// 只要一个对象有name这个属性就可以调用let dog = {"name": "dog"};let cat = {"name":

2022-04-03 22:46:27 1322

原创 Java8 函数式接口

java.util.function 包下面有大量的函数式接口,主要分为以下几个基本类别Function<T, R> 输入参数为类型T, 输出为类型R, 记作 T -> RConsumer<T> 输入参数为类型T, 输出为void, 记作 T -> voidSupplier<T> 没有输入参数, 输出为类型T, 记作 void -> TPredica

2022-04-03 00:28:45 129

原创 IDEA快捷键

快捷键说明Ctrl------------Ctrl + F在当前文件进行文本查找 (必备)Ctrl + R在当前文件进行文本替换 (必备)Ctrl + Z撤销 (必备)Ctrl + Y删除光标所在行 或 删除选中的行 (必备)Ctrl + X剪切光标所在行 或 剪切选择内容Ctrl + C复制光标所在行 或 复制选择内容Ctrl + D复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 (必备)Ctrl + W...

2022-04-03 00:21:38 215

原创 NGINX基础知识

Master and Worker ProcessesNGINX 有一个主进程和一个或多个工作进程。如果启用缓存,缓存加载器和缓存管理器进程也会在启动时运行。主进程的主要目的是读取和评估配置文件,以及维护工作进程。工作进程执行请求的实际处理。NGINX 依赖于操作系统相关的机制来有效地在工作进程之间分配请求。工作进程的数量由nginx.conf配置文件中的worker_processes指令定义,可以设置为固定数量,也可以配置为根据可用 CPU 内核的数量自动调整。控制命令要重新加载您的配置,您可

2022-04-03 00:18:56 493

原创 JavaScript中的对象

JavaScript 中的对象JavaScript 中的对象 = 属性+方法, 函数也是一种对象var animal = { name: "animal", eat: function () { console.log(this.name + " is eating"); }}animal.eat();// animal is eating// 动态的给对象增加一个属性animal.color = "black";console.log(anima

2022-04-03 00:12:04 487

原创 Nginx proxy_store的使用

Nginx 的 proxy_store 缓存方式可以把目标服务器的响应信息永久的缓存在本地磁盘中,其目录结构和请求URL结构一样。下次相同的请求就可以直接读取本地磁盘文件进行响应了。现在有一个需求:需要尽可能的镜像一个WEB 后台管理系统(参考别人的系统设计_),也就是要把这个系统的静态文件(html/js/css…)和接口请求数据都保存在本地。如果是单个网页倒也简单,直接浏览器右键 另存就可以搞定,要另存整个系统的话是比较麻烦的,刚好Nginx的 proxy_store可以完成。Nginx 配置如.

2022-03-21 01:09:36 4545

原创 Docker 安装

docker 安装说明

2020-08-29 17:51:59 201

原创 ServletContainerInitializer

Servlet3.0+ 规范在web容器启动时为提供给第三方组件机会做一些初始化的工作,例如注册Servlet或者Filtes等。哪它是如何实现的呢?实现原理:首先了解下Java SPI(Service Provider Interface),它是Java提供的一套用来被第三方实现或者扩展的API需要遵循如下约定:当服务提供者提供了接口的一种具体实现后,在jar包的META-INF/...

2020-03-24 20:10:35 622

疯狂Spring Cloud

《疯狂Spring Cloud微服务架构实战》以Spring Cloud为基础,深入讲解微服务开发的相关框架,包括服务管理框架Eureka、负载均衡框架Ribbon、服务客户端Feign、容错框架Hystrix、消息框架Stream等。除了介绍这些微服务相关的框架外,在《疯狂Spring Cloud微服务架构实战》的第11章,还介绍了如何使用Spring Data框架操作各个主流数据库(MySQL、MongoDB、Redis)。在第12章,以一个案例为基础结束本书内容,在该章中讲解了模板引擎Thymeleaf,整本书将会为大家提供一整套微服务应用开发的解决方案。本书适合有一定Java开发基础的技术人员,尤其是正在使用或准备使用微服务构建高并发、大数据应用的技术人员及团队。 https://gitee.com/yangenxiong/SpringCloud/blob/master/《疯狂Spring Cloud》电子书(一).pdf 这里也可以下载哦!

2018-04-22

HttpClient4.x 教程 PDF

HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。

2017-06-25

精通Spring 4.x 企业应用开发实战

Spring 4.0是Spring在积蓄4年后,隆重推出的一个重大升级版本,进一步加强了Spring作为Java领域**开源平台的翘楚地位。Spring 4.0引入了众多Java开发者翘首以盼的基于Groovy Bean的配置、HTML 5/WebSocket支持等新功能,全面支持Java 8.0,*低要求是Java 6.0。这些新功能实用性强、易用性高,可大幅降低Java应用,特别是Java Web应用开发的难度,同时有效提升应用开发的优雅性。本书是在《精通Spring 3.x――企业应用开发详解》的基础上,历时一年的重大调整改版而成的,延续了上一版本“追求深度,注重原理,不停留在技术表面”的写作风格,力求使读者在熟练使用Spring的各项功能的同时透彻理解Spring的内部实现,真正做到知其然并知其所以然。此外,本书重点突出了“实战性”的主题,力求使全书内容体现“从实际项目中来,到实际项目中去”的写作原则。

2017-06-03

Maven实战(许晓斌著)完整高清版PDF

《Maven实战》是国内首本公开出版的Maven专著。它内容新颖,基于新发布的Maven 3.0,不仅详尽讲解了 Maven 3.0的所有新功能和新特性,而且还将这些新功能和新特性与Maven 2.0版本进行了对比,以便于正在使用Maven 2.x版本的用户能更好地理解。本书内容全面,以从专家的角度阐释Maven的价值开篇,全面介绍了Maven的安装、配置和基本使用方法,以便于初学者参考;详细讲解了坐标和依赖、Maven仓库、生命周期和插件、聚合与继承等Maven的核心概念,建议所有读者仔细阅读;系统性地阐述了使用Nexus建立私服、使用Maven进行测试、使用Hudson进行持续集成、使用Maven构建Web应用、Maven的版本管理、Maven的灵活构建、生成项目站点和Maven的m2eclipse插件等实用性较强的高级知识,读者可有选择性的阅读;扩展性地讲解了如何Maven和 Archetype插件,这部分内容对需要编写插件扩展Maven或需要编写Archetype维护自己的项目骨架以更便于团队开发的读者来说尤为有帮助。它实战性强,不仅绝大部分知识点都有相应的案例,而且本书还在第4章设计了一个背景案例,后面的很多章节都是围绕这个案例展开的,可操作性极强。   《Maven实战》适合所有Java程序员阅读,无论你是从未使用过Maven,亦或是已经使用Maven很长一段时间了,相信你都能从本书中获得有价值的参考。本书也适合所有项目经理阅读,它能帮助你更规范、更高效地管理Java项目。

2017-05-29

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

TA关注的人

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