线程springboot原理java

SpringBoot——自定义自动配置与起步依赖

SpringBoot——自定义自动配置与起步依赖 SpringBoot为我们提供了灵活强大的自动配置与起步依赖功能,接下来我们参考其实现原理,实现专属于我们自己的自动配置与起步依赖。 不仅如此,我们对其稍作修改,让它适用于非SpringBoot环境,甚至是低版本的Spring Framework环境 ......
SpringBoot

红黑树的由来及其底层原理

title: 红黑树 date: 2022-03-31 10:41:30 sidebar: auto categories: 数据结构 二叉树 tags: 红黑树 一、树 1.1 树的定义 树是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说 ......
由来 底层 原理

Java项目是不是分布式,真有那么重要吗?

大家好,我是3y啊。 大概不知道从什么时候,「微服务」「分布式」这两个词又再次频繁出现在我的视线里。 「微服务」「分布式」在我刚毕业的时候还是比较关注的,那时候还入门了一把SpringCloud,写了一篇很长的文章,还是很顶的,有不少的大号都给我转载了,在知乎又获得了很多的赞。 那时候觉得懂「分布式 ......
分布式 项目 Java

深入理解 Python 虚拟机:集合(set)的实现原理及源码剖析

在本篇文章当中主要给大家介绍在 cpython 虚拟机当中的集合 set 的实现原理(哈希表)以及对应的源代码分析。 ......
源码 原理 Python set

如何通过Java更改Word中的页面大小和页面方向

新建的 Word 文档,默认纸张为 A4 纸,大小为 21 厘米 × 29.7 厘米,没特殊要求的文档用 A4 纸即可,但有时文档中的内容比较宽,需要用比 A4 纸更宽的纸张,例如制作一些宽的表格,就需要选择宽的纸张;另外,如果要制作一些法律类、信封类、信纸类等的文档,需要选择相应的纸张。那么如何更 ......
页面 大小 方向 Java Word

如何通过Java代码在Word中创建可填充表单

有时候,我们需要制作一个Word模板文档,然后发给用户填写,但我们希望用户只能在指定位置填写内容,其他内容不允许编辑和修改。这时候我们就可以通过表单控件来轻松实现这一功能。本文将为您介绍如何通过Java代码,以编程方式在Word中创建可填充表单。下面是我整理的步骤及方法,并附上Java代码供大家参考... ......
表单 代码 Java Word

某大厂面试题:说一说Java、Spring、Dubbo三者SPI机制的原理和区别

大家好,我是三友~~ 今天来跟大家聊一聊Java、Spring、Dubbo三者SPI机制的原理和区别。 其实我之前写过一篇类似的文章,但是这篇文章主要是剖析dubbo的SPI机制的源码,中间只是简单地介绍了一下Java、Spring的SPI机制,并没有进行深入,所以本篇就来深入聊一聊这三者的原理和区 ......
原理 机制 Spring Dubbo Java

一文吃透 Go 内置 RPC 原理

hello 大家好呀,我是小楼,这是系列文《Go底层原理剖析》的第三篇,依旧分析 Http 模块。我们今天来看 Go内置的 RPC。说起 RPC 大家想到的一般是框架,Go 作为编程语言竟然还内置了 RPC,着实让我有些吃鲸。 从一个 Demo 入手 为了快速进入状态,我们先搞一个 Demo,当然这 ......
原理 RPC Go

kubernetes集成GPU原理

这里以Nvidia GPU设备如何在Kubernetes中管理调度为例研究, 工作流程分为以下两个方面: 如何在容器中使用GPU Kubernetes 如何调度GPU 容器中使用GPU 想要在容器中的应用可以操作GPU, 需要实两个目标: 容器中可以查看GPU设备 容器中运行的应用,可以通过Nvid ......
kubernetes 原理 GPU

常用的Java开发工具比较

市场上Java 开发常用的编辑器可谓是琳琅满目,令人眼花缭乱,甚至让人难以抉择。所以今天挑选了几款主流的编辑器进行介绍,都是功能比较丰富的IDE,至于大神使用的普通文本编辑器就不再此次考虑范围内,主要介绍IntelliJ IDEA、Eclipse、NetBeans、Visual Studio Cod ......
开发工具 常用 工具 Java

ChatGPT强势爆红,背后的技术原理是?一文轻松搞懂!

作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功、源码解析、科技故事、项目实战、面试八股等更多硬核文章,首发于公众号「小牛呼噜噜」 大家好,我是呼噜噜,最近一段时间被ChatGPT疯狂刷屏,自从2022年11月发布上线后,不仅 5 天时间便突破百万用户,月活用户突 ......
强势 原理 背后 ChatGPT 技术

C++重载底层原理

好吧,承认是自己浅薄了 当被问起C++重载时,嘴角不自觉的微微上扬,然后脱口而出,C++重载的原则: 函数名相同,函数参数列表不同(类型、个数、顺序) 匹配原则1:严格匹配,找到再调用 匹配原则2:通过隐式类型转换寻求一个匹配,找到则调用 注:返回类型不构成重载条件 C++编译时多态也是由重载函数来 ......
底层 原理

Java处理正则匹配卡死(正则回溯问题)

正则匹配卡死怎么来的? 背景 背景:这次问题的背景是项目上遇到了,在使用正则对数据进行提取时,发现提取不到,日志解析不成功,造成kafka消息有积压 项目现场问题 项目中某一个微服务再处理正则时,发现在处理部分日志时候,线程会卡死,线程卡死,因此kafka中的消息定会积压,后面的日志即不会处理。关键 ......
正则 问题 Java

nacos实现Java和.NetCore的服务注册和调用

用nacos作为服务注册中心,如何注册.NetCore服务,如何在Java中调用.NetCore服务呢?可以分为下面几个步骤: 0.运行nacos 1.开发.net core服务,然后调用nacos提供的.net core sdk注册服务。 2.开发Java服务,然后注册服务。 3.用RestTem ......
NetCore nacos Java

三天吃透Java并发八股文!

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.c ......
八股文 八股 Java

集成电路仿真器(SPICE)的实现原理

本文系统地介绍类SPICE集成电路仿真器的实现原理,包括改进节点分析(MNA)、非线性器件建模、DC/AC分析、时域/(复)频域仿真以及涉及的数值方法。 基于本文原理,实现了SPICE-like仿真器:https://github.com/cassuto/CSIM 1 理论基础 任何集总参数电路都能 ......
仿真器 集成电路 电路 原理 SPICE

Q-M(Quine-McCluskey)两级逻辑化简算法原理解析

转载请务必注明出处:https://www.cnblogs.com/the-wind/p/15764283.html,感谢合作。 1 背景介绍:两级逻辑 香农在他的硕士论文[1]中提出了开关电路的综合方法,其中提到香农展开定理,即任意n变量布尔函数$f(x_1,...,x_{n-1},x_n)$都可 ......

Java/.Net双平台核心,Jvm和CLR运行异同点

前言: 本篇以.Net 7.0.2 CLR 和 OpenJDk19参照,解析下它们各自调用函数的异同。 以下为个人理解。 概述 JDK大约5.9G,CLR大约7.6G,两者相差1.7G左右。 root@tang-virtual-machine:/home/tang# cd jdk-jdk-19-36 ......
异同 核心 平台 Java CLR

Java线程池和Spring异步处理高级篇

开发过程中我们会遇到很多使用线程池的场景,例如异步短信通知,异步发邮件,异步记录操作日志,异步处理批量Excel解析。这些异步处理的场景我们都可以把它放在线程池中去完成,当然还有很多场景也都可以使用线程池,掌握线程池后开发中自己灵活应用。 例如在生成订单的时候给用户发送短信,生成订单的结果不应该被发 ......
线程 Spring Java

java生态下后端开发都有哪些技术栈?

前言 大学跟着老师培训班学习的C#,那时(2003-2010)它是比较时髦得开发语言,我2008年毕业后,当了一年多三班倒的工人,由于不是自己要走的路,就换到自己专业上来了,也就开始从事了winform窗体应用程序开发。随着web网站兴起,就转到asp.net开发,前端app混合开发。大约2017年 ......
生态 技术 java

最近写了一个demo,想看看java和go语言是怎么写的

最近写了一个demo:demo的github地址 一. 简单介绍 1. Server端 它是一个WebApi服务,把它当成一个黑盒就行了。 2. MiddleServer端 是重点,它是一个WebApi服务,包含一个GetValues接口和一个Query2接口。 Query2接口是一个简单的接口。 ......
语言 demo java

方法论系列:用四个金字塔来说明金字塔原理

本系列博客就以比较知名的《金字塔原理》作为开篇,本文会以四个“金字塔”的形式介绍金字塔原理的核心概念,从而剖析金字塔的结构、了解金字塔的构建方式、掌握其中的思考逻辑以及解决问题的关键思路。为什么一金字塔原理开篇呢?因为这个是我17年入职当前这家公司时所听到的第一个方法论,在公司时隔5年依然被奉为方法... ......
金字塔 金字 方法论 原理 方法

微软出品自动化神器【Playwright+Java】系列(十)元素定位详解

一、写在前面 又有很久没更文了,真的是被催婚搞的整个人情绪特别不好,如果硬要形容的话,那就是没法跟人正常沟通,一点就着,做什么都没耐心,看什么都烦,简直没救了... 也是偶然发现的,自己居然没写关于Playwright的元素定位,这不是自动化测试的重中之重,怎么可以忘,马上安排! 二、元素定位 主要 ......
神器 Playwright 元素 Java

微软出品自动化神器【Playwright+Java】系列(十二)测试框架的设计与开发

一、前言 大家好,我是六哥! 又有好长一段时间没更文了,不是我懒,而是确实在更文上,没有以前积极了,这里是该自我检讨的。 其实不是我不积极,而是相对更文学习来说,优先级不是最高。 对我而言,目前最重要的就是减肥,除了下雨下雪,我都坚持每天5公里,keep记录如下: 早在四天前就完成了playwrig ......
神器 Playwright 框架 Java

JAVA重试机制多种方式深入浅出

重试机制在分布式系统中,或者调用外部接口中,都是十分重要的。 重试机制可以保护系统减少因网络波动、依赖服务短暂性不可用带来的影响,让系统能更稳定的运行的一种保护机制。 为了方便说明,先假设我们想要进行重试的方法如下: @Slf4j @Component public class HelloServi ......
深入浅出 多种 机制 方式 JAVA

Java多种方法实现等待所有子线程完成再继续执行

简介 在现实世界中,我们常常需要等待其它任务完成,才能继续执行下一步。Java实现等待子线程完成再继续执行的方式很多。我们来一一查看一下。 Thread的join方法 该方法是Thread提供的方法,调用join()时,会阻塞主线程,等该Thread完成才会继续执行,代码如下: private st ......
线程 多种 方法 Java

【基数排序算法详解】Java/Go/Python/JS/C不同语言实现

说明 基数排序(RadixSort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。基数排序的发明可以追溯到1887年赫尔曼·何乐礼在列表机(Tabulation ......
基数 算法 语言 Python Java

【选择排序算法详解】Java/Go/Python/JS/C 不同语言实现

【选择排序算法详解】Java/Go/Python/JS/C 不同语言实现 说明 选择排序(Selection Sort)是一种简单直观的排序算法。跟冒泡、插入排序一样,它将数列分为已排序和待排序两个区间。首先在待排序序列中找到最小(或最大)的元素,追加到已排序序列中,然后继续从待排序序列中寻找最小( ......
算法 语言 Python Java Go

【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现

【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现 简介 桥接模式(Bridge Pattern)是一种结构型设计模式,它将一个大类或一系列紧密相关的类拆分为抽象和实现两个独立的层次结构,来实现二者的解耦。参与桥接的接口是稳定的,用户可以扩展和修改桥接中的类,但是不能改变接口。 ......
设计模式 语言 模式 Python Java

【建造者设计模式详解】Java/JS/Go/Python/TS不同语言实现

简介 建造者模式(Builder Pattern),也叫生成器模式,属于创建型模式。它使用多个简单的对象一步一步构建成一个复杂的对象。它允许你使用相同的创建代码生成不同类型和形式的对象。 当你希望使用代码创建不同形式的产品 (例如各种商品和订单) 时, 一些基本部件不会变,而其组合经常变化的时候,就 ......
设计模式 语言 模式 Python Java