Java

[JS] 深拷贝的实现

浅拷贝和深拷贝的区别 浅拷贝:浅拷贝指的是复制一个对象的时候,对于对象的一个属性, 如果是基本数据类型,则复制其值; 如果是引用数据类型,则复制其引用。 深拷贝:深拷贝指的是复制一个对象的时候,对于对象的一个属性, 如果是基本数据类型,则复制其值; 如果是引用数据类型,则递归地深拷贝该对象。 从内存的堆区和栈区上观察它们的区别: 浅拷贝:引用数据类型的属性值指向同一个对象实例:

常见的定时任务方案

常见的延时任务方案 1、最轻量级(基于内存的线程池实现)一般用于短时间实时性较高,容许少量消息丢失 2、轻量级(基于Redission的实现)推荐 一般用于实时性,消息可靠性,轻量级的综合选择 引入依赖 消息发布器 消息处理器 3、消息可靠性高(基于MQ技术实现的延时消息)推荐 一般用于消息可靠性较高,不允许丢失 4、消息可靠性较高(基于定时任务轮询实现的数据库持久化) 这个比较简单

Laravel 组件

创建组件命令 php artisan make:component Alert make:component 命令还将为组件创建视图模板。视图将放在 resources/views/components 目录中。为自己的应用程序编写组件时,组件会在 app/View/components 目录和 resources/views/components 目录中自动发现,因此通常不需要进一步的组件注册。

说说RabbitMQ延迟队列实现原理?

使用 RabbitMQ 和 RocketMQ 的人是幸运的,因为这两个 MQ 自身提供了延迟队列的实现,不像用 Kafka 的同学那么苦逼,还要自己实现延迟队列。当然,这都是题外话,今天咱们重点来聊聊 RabbitMQ 延迟队列的实现原理,以及 RabbitMQ 实现延迟队列的优缺点有哪些? 很多人知道使用 RabbitMQ 是可以实现延迟队列的,但对于 RocketMQ 自身也提供了延迟队列

实训0710

# 面向对象 ## 如何打开md文件 1、VSCode,预览窗口可以 2、IDEA 3、Typora ## 类和对象 类 一个模板,一类东西共有特征的抽象 属性 当变量写在类的语句块中时,可以认作是属性描述某种类型的信息 方法 类的行为,能做的事情 ```java   ## 封装 把类的某些特征隐藏起来,保证数据正确和安全 ## 对象

揭秘 Java 变长参数:如何优雅地处理不定数量的字符串

哈喽,大家好,我是木头左! 理解变长参数:基础概念 在Java中,变长参数也称为可变参数,它允许你传递任意数量的参数到一个方法中。这个特性是通过使用三个点符号...来实现的。当你在方法的参数列表中使用...时,任何传递给该方法的额外参数都会被当作数组来处理。这为提供了一种灵活的方式来设计接口,使得方法能够接受不同数量的参数而不需要重载。 语法结构:声明变长参数 要声明一个变长参数,你需要做的就

openStack核心组件的工作流程

目录openStack核心组件的工作流程1. Keystone1.1 User1.2 Credentials1.3 Authentication1.4 Token1.5 Project1.6 Service1.7 Endpoint1.8 Role1.9 keystone综述2. glance2.1 glance-api2.2 glance-registry2.3 backend2.4 glanc

暑假Java自学每日进度总结1

今日所学: 一.常用的cmd命令: 1>盘符: 2>dir(显示当前文件所有目录) 3>cd 目录(打开该目录) 4>cd..(回到上一目录) 5>cd(回到当前盘符初始态) 6>cls(清屏) 7>exit(退出cmd命令界面) 8>cd 目录1目录2...(打开多级目录) 二.创建用cmd打开软件的快捷方式: 使用环境变量: 1>电脑 2&

玩转 Easysearch 语法

什么是 Easysearch Elasticsearch 是一个基于 Apache Lucene 的开源分布式搜索和分析引擎,它被广泛应用于全文搜索、结构化搜索和分析等多种场景中。作为 Elasticsearch 的国产化替代方案,Easysearch 不仅保持了与原生 Elasticsearch 的高度兼容性,还在功能、性能、稳定性和扩展性方面进行了全面提升。对于开发团队来说,从 Elastic

Java基础-学习笔记04

04 运算符 进制 1. 运算符 逻辑与 & 和 短路与 && 共同点:两个条件都为true时,结果为true,否则为false。 & 逻辑与:不管第一个条件是否为false,第二个条件都要判断; && 短路与:如果第一个条件判断为false,则第二个条件不会判断。 逻辑或 | 和 短路或 || 共同点:两个条件只要有一个成立,结果为true,否则为

vue 中文转拼音

  1、创建const.js文件,内容如下: export const pinyin = { 'a': 'u554au963fu9515', 'ai': 'u57c3u6328u54ceu5509u54c0u7691u764cu853cu77eeu827eu788du7231u9698u8bf6u6371u55f3u55ccu5ad2u7477u66a7u7839u953f

浏览器工作过程及相关名词

网页获取 在计算机网络中,双方通过知道彼此的 IP 地址,即可建立通信 通信协议包括 TCP 与 UDP 两种,其中: TCP 建立连接过程如下(三次挥手): sequenceDiagram participant A participant B A->>B: SYN B->>A: SYN, ACK A->>B: ACK TCP 断开连接过程如下(四次握

JVM栈帧

Java 的源码文件经过编译器编译后会生成字节码文件,然后由 JVM 的类加载器进行加载,再交给执行引擎执行。在执行过程中,JVM 会划出一块内存空间来存储程序执行期间所需要用到的数据,这块空间一般被称为运行时数据区。 栈帧(Stack Frame)是运行时数据区中用于支持虚拟机进行方法调用和方法执行的数据结构。每一个方法从调用开始到执行完成,都对应着一个栈帧在虚拟机栈/本地方法栈里从入

21世纪20年代了,还有人无脑喷前端非常简单??(附前端学习所有技术栈)

前端基础:HTML、CSS、JavaScript 前端高级:HTML5、CSS3、JavaScript 语法规范:TypeScript、ECMAScrpit、Eslint、Prettier 前端热门框架:Vue.js、React.js、Angular.js、Bootstrap、Nuxt.js、Svelte.js、Solid.js、Preact.js、TailwindCSS、UnoCSS JS常用方

社招——4个offer

写在前面的话   2024年4月30日,公司开始了大裁员,原因是经营状态不好+更换CEO,我被裁了,给了n+2。被裁后心情跌至谷底,有很多疑惑和愤怒的情感,明明我这么优秀,还刚升职,为什么把我裁了。但更多的是茫然,休息了两周左右,我应该去向何方呢?当时刷了下招聘软件,发现大部分都只招3年经验的开发,我一年多经验无疑是没有竞争力的,于是自我怀疑自己。身边被裁的同学有的考公,有的继续找工作,那么我应该

数据仓库建模工具之一——Hive学习第二天

Hive的概述 1、Hive基本概念 1.1 Hive简介 Hive本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更近一步说hive就是一个MapReduce客户端。 为什么使用Hive? 使用hadoop,成本太高,项目要求周期太短,MapReduce实现复杂查询逻辑开发难度太

fastqc和Trimmomatic的使用

1.FastQC分析检测报告 在先前的记录中,我们已经得到了我们的QC报告,现在要针对我们的报告对原始数据进行过滤 其中 和 都表明该数据需要去接头,并对序列进行处理 2.Trimmomatic的下载 首先,使用conda安装Trimmomatic conda install Trimmomatic 就可以安装完毕了,安装完使用trimmomatic -h检测是否安装成功 成功了是这样的。 注意

java的基础

Java的概述 开元、共享、社区庞大的计算机语言 java之父 詹姆斯·高斯林 java技术体系 javaSE javaEE javaME java特性 可移植、跨平台、强类型语言、安全 java的应用领域 网站以及后台 手机领域 金融项目 物流系统 桌面开发 物联网项目 服务器企业级开发 大数据 科学技术 安卓和鸿蒙 游戏开发 字节 1 byte = 8 bit 1 KB = 1024

代码随想录刷题Day 14 二叉树part02

226. 翻转二叉树 101. 对称二叉树 怎么理解题意中的对称呢,对于递归版本中,我是这么理解的,其实位于对应对称位置处的节点必须相同。比如对于第二层而言,两个2位置处的节点相同;对于第三层,则是两个3位置处节点相同,两个4处相同。这个相同指的是可以都是null或者两者的val必须相同。

从零手写实现 nginx-29-try_files 指令

前言 大家好,我是老马。很高兴遇到你。 我们为 java 开发者实现了 java 版本的 nginx https://github.com/houbb/nginx4j 如果你想知道 servlet 如何处理的,可以参考我的另一个项目: 手写从零实现简易版 tomcat minicat 手写 nginx 系列 如果你对 nginx 原理感兴趣,可以阅读: 从零手写实现 nginx-01-为什

0711实训

# 高级OOP ## 抽象类和接口 ### 抽象类 描述抽象概念的类,不能被实例化,可以含有抽象方法 ```java // 抽象类 public abstract class ClassName{     // 抽象方法     public abstract Object doSomething(String arg); } ``` ##

0712实训

# 异常和调试 ## Throwable Exception 异常 可以预料到的,应该由程序员处理的 Error 错误 不可预料的,程序员一般不处理 ## Exception分类 一般异常,要求处理,继承于Exception类 运行时异常,编译器不处理,一般由程序逻辑处理 ## 异常抛出 方法签名后面加 throws ```java  

工程化Vue使用

目录环境准备Vue项目-创建Vue项目开发流程API风格案例 推荐阅读: VUE-局部使用 环境准备 介绍:create-vue是Vue官方提供的最新的脚手架工具,用于快速生成一个工程化的Vue项目。 create-vue提供了如下功能: 统一的目录结构 本地调试 热部署 单元测试 集成打包 依赖环境:NodeJS Vue项目-创建 创建一个工程化的Vue项目,

图像处理-颜色转换

在图像处理中,颜色转换是常见模块。为什么要用上颜色转换呢?因为我们拍摄的图像通常是RGB格式的,五颜六色。这种颜色对计算机是好识别的,但是对人的肉眼不友好,因为人的肉眼对红色等很多颜色不敏感。这样我们就需要RGB格式转换为HSV,HSL,YUV颜色模型进行处理。 也就是说:RGB图像与相机传感器输出的原始数据相对应,HSV图像则与我们人类的直观视觉更相符。   RGB RGB 代表红绿

LeetCode 1298. Maximum Candies You Can Get from Boxes

原题链接在这里:https://leetcode.com/problems/maximum-candies-you-can-get-from-boxes/description/ 题目: You have n boxes labeled from 0 to n - 1. You are given four arrays: status,

Java中的泛型(很细)

非常好,让我们深入探讨Java中的泛型这个重要主题。我将按照之前提供的框架,为您创作一篇全面而专业的技术博客文章。 引言 在Java编程世界中,泛型(Generics)是一个革命性的特性,它彻底改变了我们编写和组织代码的方式。自Java 5引入以来,泛型已成为Java语言不可或缺的一部分,为开发者提供了更强大的类型安全性和代码重用能力。本文将深入探讨Java泛型的方方面面,从其核心原理到实际应用

随手记:Bruno动态注入Header

因为PostMan启动太慢,动不动就要登录,以及防火墙的问题,搞起来挺麻烦,一气之下就换了Bruno来管理API请求,接口的安全校验也是很正常的事儿,最近有个兄弟部门使用了参数+时间戳+HmacSHA256校验,把校验的Sign放到Header里,研究了下,做个记录,方便随取随用,这种动态的Header需要使用Script: Bruno Script官方文档:https://docs.usebr

达梦数据库DM8-DCP认证专家培训视频

一、介绍 达梦数据库(DMDB)是由中国自主研发的数据库管理系统,它是一款拥有完全自主知识产权的大型关系数据库。达梦数据库支持企业级应用,能够满足不同规模数据处理的需求,尤其在处理大规模数据、高并发访问和高可用性方面表现突出。它兼容国际主流数据库的标准,同时提供了丰富的数据安全特性,包括访问控制、审计、数据加密等,满足企业和政府部门对数据安全的要求。 达梦数据库支持多种操作系统平台,如Window

由于安装多个jdk导致出现java以及javac版本不匹配问题

之前由于下载了多个版本的jdk版本,导致了在运行java程序时出现了报错 报错信息大概为版本不匹配,查看了java以及javac的版本,发现一个是18,一个是20,所以查看解决方法,实现版本匹配 一开始全在修改环境变量里面path中的jdk,以及JAVA_HOME的存放顺序 后面发现问题没有解决,于是我查看了如下的文件夹(原始是存放了,java.exe、javaw.exe、javaws.exe

加密方法 国密SM2、 Rsa(集成Redis)、 Spring Security

国密SM2的用法:   SM2工具类 SM2Util  package com.zxd.SM2; /** * @Auther: Zxd * @Date: 2024/07/16 14:58 * @Description: SM2加解密、签名验签工具类 */ import org.bouncycastle.asn1.gm.GMNamedCurves; import org.b

<<  <  280  281  282  283  284  285  286  287  288  289  290  >  >>