Java

Java面试挂在线程创建后续,不要再被八股文误导了!创建线程的方式只有1种

写在开头 在上篇博文中我们提到小伙伴去面试,面试官让说出8种线程创建的方式,而他只说出了4种,导致面试挂掉,在博文中也给出了10种线程创建的方式,但在文章的结尾我们提出:真正创建线程的方式只有1种,剩下的衍生品多是套壳,那么在这篇文章中,我们来解释一下缘由! 线程创建方式可先阅读这篇文章:面试官让说出8种创建线程的方式,我只说了4种,然后挂了。。。 线程创建之源 OK!咱们闲话少叙,直接进入正题,

@Component和@Bean的区别

个人回答:1.作用对象不同:@Component 注解作用于类,而 @Bean 注解作用于方法、2.@Component 通常是通过路径扫描来自动侦测以及自动装配到 Spring 容器中(我们可以使用 @ComponentScan 注解定义要扫描的路径从中找出标识了需要装配的类自动装配到 Spring 的 bean 容器中)。@Bean 注解通常是我们在标有该注解的方法中定义产生这个 bean,@

DBeaver 23.2 最新版 全系列版本、全平台(Win+Mac+Linux)永久激活破解!

DBeaver 简介 DBeaver是一个SQL客户端和数据库管理工具。对于关系数据库,它使用JDBC API通过JDBC驱动程序与数据库交互。对于其他数据库(NoSQL),它使用专有数据库驱动程序。它提供了一个编辑器,支持代码完成和语法高亮。它提供了一种插件体系结构(基于Eclipse插件体系结构),允许用户修改应用程序的大部分行为,以提供与数据库无关的针对数据库的功能或特性。这是一个用Java

Linux 常用监控指标总结

1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑。所以,依靠强大的监控系统,收集尽可能多的指标,意义重大。但哪些指标才是有意义的呢,本着从实践中来的思想,各位工程师在长期摸爬滚打中总结出来的经验最有价值。在各位运维工程师长期的工作实践中,我们总结了在系统运维过程中,经常会参考的一些指标,主要包括以下几个类别: CPU Load 内存 磁盘 IO 网络相关

什么是@Component,@Component的作用是什么

一、在Spring中,Bean是指什么? 如果我们想搞清楚@Component是什么,我们就需要先搞清楚在Spring框架中Bean指的是什么!!!1、在Spring框架中,Bean是指由Spring容器初始化、装配和管理的Java对象。Bean可以是任何普通的Java类,它的创建和管理都由Spring容器负责。 2、由于Spring的IOC(Inverse of Control,控制反转)和DI

当未指定且存在多个构造器,实例化对象时Spring如何选择?

前言 在前面的讲解中,我们了解了如何获取构造器。当只有一个符合条件的构造器时,自然会选择它作为初始化的构造器。然而,在上一节中,我们遇到了一种特殊情况:当有多个符合条件的构造器时,返回的是一个数组。在这种情况下,Spring又是如何从多个构造器中选择最合适的呢?今天,我们将讨论的主题是:autowireConstructor方法。 autowireConstructor 让我们首先深入研究一下该方

Jpackage-制作无需预装Java环境的Jar可执行程序

JAR 包要在预装 JRE 环境的系统上执行。如果没有预先安装 JRE 环境,又想直接运行 Java 程序,该怎么办呢? 这篇文章我们会先学习如何将 Java 程序打包成一个可执行的 Java JAR 文件。然后演示如何使用这个 JAR 文件生成 Windows、Linux、MacOS 上的可执行程序。 我们将使用 Java 自带的 jar 命令行工具来创建 JAR 文件。然后学会使用 jpac

Java工具 - 坐标系WGS-84,GCJ-02,BD-09之间的相互转换

import java.util.ArrayList;import java.util.List; /** * 地图坐标转换 */public class GpsCoordinateUtils { private static final double PI = 3.1415926535897932384626433832795; // private static final

在HTML界面显示图片略缩图 , 点击图片放大显示

HTML样式 JS js是之前在网上找的, 已不记得来源了,此处记录下备用.

学会这7种SQL进阶用法,让你少走99%的弯路!

引言 在日常业务开发中,熟练掌握SQL语言是至关重要的。除了基础的增删改查操作外,了解和掌握一些进阶的SQL用法能够让你更高效地处理各种复杂的数据操作。本文将介绍几种SQL进阶用法,让你少走99%的弯路,提高数据处理效率。 自定义排序 在MySQL中,你可以通过使用自定义排序来指定特定字段的排序顺序。通常情况下,MySQL的排序是按照默认的升序(ASC)或降序(DESC)进行的。但是,有时候你可能

ZNOTE - 复制网页上禁止复制的文字

  按F12键打开调试器,点击Settings按钮:   点选Disable Javascript,然后就可以复制了:  

Java实现文件断点续传

文件断点续传代码 测试代码

Sharding-JDBC源码解析与vivo的定制开发

作者:vivo IT 平台团队 - Xiong Huanxin Sharding-JDBC是在JDBC层提供服务的数据库中间件,在分库分表场景具有广泛应用。本文对Sharding-JDBC的解析、路由、改写、执行、归并五大核心引擎进行了源码解析,并结合业务实践经验,总结了使用Sharding-JDBC的一些痛点问题并分享了对应的定制开发与改造方案。 本文源码基于Sharding-JDBC 4.

spring - mvc - @Async

@Async @EnableAsync 1.启用异步支持 @EnableAsync注释在我们的应用程序中启用异步处理。具有类似功能的 XML 等效项是使用executor属性的task:*命名空间。 让我们首先通过Java 配置启用异步处理。 我们将通过将@EnableAsync添加到配置类来完成此操作: 启用注释就足够了。但也有一些简单的配置选项: 注解–默认情况下, @EnableAsync

什么是函数回调

什么是函数回调? 介绍 函数回调是一种编程概念,它描述的是这样一个过程:一个函数(称为回调函数)作为参数传递给另一个函数(称为调用函数),当满足一定条件或者在某个特定时刻,调用函数会调用传递过来的回调函数。这种机制允许程序员在编写代码时,能够在不同的上下文中重用函数,同时也能实现异步处理、事件驱动编程以及模块间的松散耦合 示例 以Java为例,由于Java语言不直接支持函数指针,因此通常通过接口实

spring 类路径扫描

类路径扫描是Java框架(特别是Spring框架)中的一个重要特性,它允许框架在应用启动时自动发现和注册应用中的组件。这一过程极大地简化了配置,提高了开发效率。下面是类路径扫描的一些关键点: 原理 自动发现:类路径扫描通过检查应用的类路径,自动查找符合特定条件的类。这些条件通常是类上的注解,如Spring中的@Component、@Service、@Repository等。 注册为Bean:一旦

spring META-INF.factories

在Spring框架及许多基于Spring的项目中,META-INF/spring.factories文件扮演着重要的角色。这个文件位于项目的META-INF目录下,用于配置Spring框架的自动配置(Auto-Configuration)、监听器(Listeners)、实体(Entities)等组件。spring.factories文件主要被用于Spring Boot的自动配置机制,但也

Flink CDC 写 StarRocks

Flink 版本:1.17.1 CDC 版本:2.3.0 StarRocks 版本:2.5.8 前言 最近需要实时同步几个 Mysql 表到 StarRocks,薅出之前写的 Demo 代码,简单改造了一下,加了个配置文件,可以通过修改配置文件指定 source、sink 表,这样就不用讲表名什么的写死到代码里面。 再利用 flink session 模式,把一堆任务放到一个 session(表的

React设计原理解密及核心源码解读

一、React基础回顾 1、react介绍 React 是一个用于构建用户界面的 JavaScript 库,它只负责应用的视图层,帮助开发人员构建快速且交互式的 web 应用程序。 React 使用组件的方式构建用户界

如何配置极狐GitLab Maven 仓库

本文作者:徐晓伟 GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 极狐GitLab Maven 仓库 极狐GitLab Maven 私库使用方式 文档 软件包库中的 Maven 包 配置(以Maven为例) 示例项目

前端设计模式大全

1. 工厂模式 工厂模式(Factory Pattern):将对象的创建和使用分离,由工厂类负责创建对象并返回。在前端开发中,可以使用工厂模式来动态创建组件。 前端中的工厂模式是一种创建对象的设计模式,它可以让我们封装创建对象的细节,我们使用工厂方法而不是直接调用 new 关键字来创建对象,使得代码更加清晰、简洁和易于维护。在前端开发

MySQL Server架构概述

推荐:SQL语句执行顺序相关问题。 MySQL Server架构 分层概述 MySQL Server架构可抽象为3层。 连接层:验证用户名密码,认证成功后,获取当前账号的权限并缓存,并分配TCP连接池和线程池资源。 处理层:实现核心的处理功能。 存储层:将处理后的数据高性能安全的写入磁盘,或从磁盘中正确的读取。 模块构成与执行顺序 连接层 :提供多个线程用于客户端和服务器交互,连接层包含连接

@ConfigurationProperties(prefix = GatewayProperties.PREFIX)

在Spring Boot中,@ConfigurationProperties注解用于将配置文件(如application.properties或application.yml)中的属性绑定到一个Java Bean上。通过指定prefix属性,可以选择性地绑定配置文件中特定前缀下的属性到Bean的字段上。这种方式简化了配置管理,使得配置数据的组织和使用更加灵活和方便。 示例 假

[React]jsx语法规则

JSX语法规则1. 定义虚拟DOM时,不要写引号。(建议写括号)2. 标签中混入JS表达式时使用{ }3. 类名样式:指定类名不要用class(是ES6的关键字),要用className。4. 内联样式:要用style={{key:value}}的形式去写。5. 虚拟DOM只有一个根标签。6. 标签必须闭合。7. 标签首字母:    a. 若小写字母开头,则将该标签转为htm

node和浏览器发送请求的方式

浏览器请求接口运行在客户端的浏览器环境中,而Node请求接口运行在服务器端的Node.js环境中。 浏览器提供了特定的API(如Fetch API或XMLHttpRequest)来发送HTTP请求 fetch: Fetch API 是一种现代、基于 Promise 的 JavaScript API,用于在浏览器环境中执行网络请求 XMLHttpRequest: XMLHttpReque

Vue学习笔记40--脚手架项目架构分析

脚手架项目架构分析 1.babel.config.js——babel的控制文件,用于ES6转ES5(一般不需要程序员进行配置,如想研究请查看babel官网) module.exports = { presets: [ '@vue/cli-plugin-babel/preset' ] } 2.package.json——包信息说明,例如:项目名称、版本、采用的依赖、库文件&nbs

CentOS7 升级 GCC 版本

CentOS 7 升级 GCC 版本 1. GCC工具介绍 GCC编译器: GCC(GNU Compiler Collection)是由 GNU 开发的编程语言编译器。 GCC最初代表“GNU C Compiler”,当时只支持C语言。 后来又扩展能够支持更多编程语言,包括 C++、Fortran 和 Java 等。 因此,GCC也被重新定义为“GNU Compiler Collection”,成

Hexo、VitePress、Docusaurus,哪个最适合你的静态网站生成器?

在选择合适的静态网站生成器时,Hexo、VitePress、Docusaurus是三个备受关注的选项,那么到底哪一个框架更适合你呢?本文将从使用场景、社区生态、功能、性能、扩展性这五个方面,帮你全方位分析各个框架的优缺点,以便为你的技术选型提供参考。 1、应用场景 Hexo, 官方定位自己是 "快速、简洁且高效的博客框架" , 但是它同样适合构建简单的文档网站,它具有简单易用的特点,适合那些对

浏览器和服务器之前的加密解密过程

当服务器通过HTTPS发送加密数据时,浏览器会进行以下步骤来解密这些数据: 建立HTTPS连接: 用户在浏览器中输入HTTPS网址,浏览器会尝试与服务器建立连接。这个连接是通过HTTPS协议进行的,它使用SSL/TLS加密技术来确保数据的安全性。 交换密钥和证书: 在建立连接的过程中,服务器会向浏览器发送其SSL/TLS证书。这个证书包含了服务器的公钥和一些其他信息,用于验证服务器的身份

<<  <  468  469  470  471  472  473  474  475  476  477  478  >  >>