自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 Node.js模块:使用 Bull 打造高效的任务队列系统

在现代 Web 开发中,异步任务处理是一个常见需求。无论是发送邮件、处理批量数据还是执行耗时操作,将这些任务放入队列可以显著提升应用的性能和用户体验。Node.js 生态中,Bull 是一个强大且易用的任务队列库,基于 Redis 构建,支持延迟任务、优先级、并发控制等功能。

2025-03-19 06:26:13 1796

原创 Java新特性:15, 16~22, 23

Java 17 是一个长期支持 (LTS) 版本,它引入了一些重要的特性,主要集中在增强语言表达力、提升性能、增强安全性和可维护性等方面。Java 23 带来了不少令人兴奋的新特性,这些特性主要集中在增强语言表达力、提升性能、改进开发体验以及增强安全性和可维护性等方面。好的,Java 20 引入了一些新特性,主要集中在预览和孵化阶段,旨在提升性能、增强语言表达力和改进开发体验。Java 19 引入了一些新特性,主要集中在预览和孵化阶段,旨在提升性能、增强语言表达力和改进开发体验。

2025-03-18 08:16:09 799

原创 Java 多线程编程:提升系统并发处理能力!

多线程是指在同一程序中同时运行多个执行流,每个执行流称为一个线程。在 Java 中,线程由Thread类或其子类表示,每个线程独立执行特定的任务。通过方法,可以获取当前正在运行的线程对象及其信息,例如线程名称。多线程的主要优势在于充分利用 CPU 的多核特性,通过并行执行任务提高程序的吞吐量和响应速度。例如,在 Web 服务器中,每个用户请求可以分配一个线程处理,从而实现高并发的请求处理能力。初级阶段:学习Runnable和,掌握线程创建和基本同步。中级阶段:深入理解锁机制、线程池和并发集合,探索。

2025-03-16 18:09:09 676

原创 Redis 使用入门与进阶指南

Redis 是一个键值对存储系统,但它不仅仅是简单的键值数据库。它支持丰富的数据结构(如字符串、哈希、列表、集合和有序集合等),并且数据存储在内存中,因此读写速度极快。Redis 还支持持久化、主从复制和集群功能,使其在生产环境中非常实用。Redis 是一个功能强大且灵活的工具。初学者可以通过掌握基本数据结构和命令快速上手,而中级用户可以通过缓存设计、Pub/Sub 和事务等特性解决实际问题。建议在实践中多尝试,结合具体业务场景调整使用方式。

2025-03-16 12:17:52 598

原创 Pattern Matching:让 Java 分支逻辑优雅起来的秘密武器

分支逻辑是编程中的家常便饭,但一堆 if-else 或 switch 写多了,不仅代码臃肿,还容易出错。Java 从 17 开始引入 Pattern Matching(模式匹配),逐步优化分支逻辑,让代码更简洁、可读

2025-03-14 10:03:54 540

原创 用 Java Record 简化 DTO:Spring Boot + Jakarta Validation 的完美搭配

Records 是 Java 的记录类,天生为不可变数据设计,一行代码就能搞定字段、构造器、getter、equalshashCode和toString。相比传统 DTO,它省去了大量样板代码。// 还有 equals, hashCode, toString...效果:简洁到飞起,还自带不可变性,完美契合 DTO 的需求。Jakarta Bean Validation(JSR 380)提供注解(如@NotNull@Min)校验字段,我们用它强化 Records。

2025-03-14 09:38:46 1001

原创 在Java中JVM运行机制和流程(代码示例)

本文以一段代码为例,详细分析 JVM(Java 虚拟机)的运行机制和流程,包括类加载、对象创建、方法调用等步骤

2025-03-12 09:04:21 1087

原创 在Java中使用Optional解决空指针异常问题

本文主要讲解 Java 中的 Optional 类,包括其作用、使用场景和具体代码示例

2025-03-12 07:03:30 798

原创 React开发中常用的第三方库(2025.03)

在 React 开发中,第三方库的选择通常取决于项目需求,比如状态管理、路由、数据获取、UI 组件、表单处理等。

2025-03-11 11:31:57 1209

原创 在SpringMVC中HttpServletRequest 和 HttpServletResponse 使用详解

是两个核心接口,它们分别代表客户端的 HTTP 请求和服务器端的 HTTP 响应。理解和熟练使用这两个接口对于开发 Web 应用至关重要。接口封装了客户端发送给服务器的 HTTP 请求的所有信息。通过这个接口,我们可以获取请求的各种数据,例如请求头、请求参数、请求路径等。接口封装了服务器端发送给客户端的 HTTP 响应的所有信息。通过这个接口,我们可以设置响应的状态码、头部信息和内容。希望以上信息能够帮助你更好地理解和使用。在 Java Servlet 中,

2025-03-08 06:03:05 678

原创 JavaScript 中一切皆是对象吗?

在 JavaScript 中,对象是键值对的集合,并非一切皆为对象。

2025-03-04 12:47:23 423

原创 Node.js 微服务入门:快速构建你的第一个微服务

使用 Node.js 构建微服务应用是非常流行的选择,本文使用 Koa.js,Consul, Opossum, Axios, gRPC, Kong, RabbitMQ 技术栈构建一个简单微服务应用示例。

2025-03-03 20:37:42 1380

原创 Nodejs模块:使用Helmet 增强Web应用安全性

通过设置一系列关键的 HTTP 安全头,Helmet 可以有效地防御多种常见的 Web 漏洞攻击,遵循 Web 安全最佳实践。建议在你的 Node.js 项目中启用 Helmet,并根据需求进行适当的配置,提升应用的整体安全水平。

2025-03-03 19:56:11 1499

原创 Nodejs Koa RESTful API 开发入门:常用依赖与代码演示

这个示例展示了使用 Koa.js 以及指定的软件包构建 RESTful API 的结构和流程。Koa.js提供了更轻量、更现代的 Web 框架体验,使用了 async/await 和更简洁的中间件机制。Yup: 用于验证请求体,确保title是必需的。Sequelize: 管理 MySQL 数据库中的Task表。Morgan: 记录 HTTP 请求日志。Helmet: 增强安全性。cors: 启用跨域请求。

2025-03-03 19:24:37 1058

原创 在Spring开发Restful API中使用ResponseEntity返回内容

在 Spring 框架中,ResponseEntity 是一个非常强大且常用的类,用于表示 HTTP 响应的完整内容,包括状态码、响应头和响应体。它通常用于 RESTful API 的控制器中,能够灵活地控制返回给客户端的响应细节。

2025-02-27 07:57:23 3007

原创 在Spring开发中将DTO 映射到 Entity 的三种常用方式

在 Spring 开发中,将 DTO(数据传输对象)映射到 Entity(实体类)是常见需求,特别是在分层架构中(如 Controller、Service、Repository)。以下是基于 UserEntity, RoleEntity, UserDTO, UserController, UserService, 和 UserRepository 的示例,展示几种常用的 DTO 到 Entity 映射方式,包括手动映射、Spring 的 BeanUtils、以及 MapStruct 等工具的使用场景和实现。

2025-02-27 07:25:14 590

原创 10分钟了解SpringDataJPA中Specifications解决了JpaRepository和JPQL的哪些痛点问题

Specifications 是一个Spring Data JPA中非常有用的工具,它解决了 JpaRepository 和 JPQL(Java Persistence Query Language)中动态条件查询、灵活性差和类型安全不足等痛点问题

2025-02-26 09:54:39 1139

原创 10 分钟学会SpringValidation数据校验和全局异常处理

使用Spring开发的简单 REST API 小程序,通过对一张user表进行操作,代码演示如何RestAPI开发中实现数据校验、全局异常处理和返回Json格式数据。使用的核心框架包括。

2025-02-26 08:10:11 988

原创 go语言多版本管理工具g windows下安装使用

g是windows上golang语言的多版本管理软件,类似NodeJS的nvm,Python的virtualenv。本文简单介绍windows系统下g的安装和使用。下载官网下载:https://github.com/voidint/g/releases根据windows版本下载匹配的g最新版本,比如64位操作系统下载以下版本安装将已下载的 g1.2.0.windows-amd64.zip 解压到一个安装目录,比如 d:\g\g.exe配置 删除环境变量 .

2021-08-31 09:35:30 3875

原创 Git 和 Github 使用教程

本文以Windows平台为例,简要说明如何使用本地仓库Git和远程仓库Github。我们需要澄清的概念1、本地仓库:通过本地安装的Git软件管理的构建的git仓库2、远程仓库:指的在github上构建的仓库(本文以github远程仓库为例,不涉及其他远程仓库)本地仓库Git步骤1:安装配置在使用Git前,我们需要先安装 Git,Windows版Git工具下载地址如下,官网:https://gitforwindows.org国内镜像:https://npm.taobao.org

2021-07-11 21:25:25 365

原创 使用React和Node/Express进行全栈开发

本文通过一个简单示例,介绍了如何使用Nodejs创建后端应用,如何使用React创建前端应用,最后将React前端应用build后的静态界面,集成到后端应用中,实现了前端、后端独立开发与集成。1. 创建项目目录创建工程目录demo,接下来我们后端应用app和前端应用client将放到此目录中mkdir demo​cd demo2.基于Nodejs/Express/TypeScript的后端开发使用Nodejs的web框架Express创建一个后端应用app,有关Express框

2021-07-11 13:54:57 1268 1

原创 什么是计算机编码 ASCII Unicode UTF-8?

我们都知道,在计算机的宇宙里,世界的中心是0,1,计算机也只能在磁盘上存储或者在网络上传输0,1,不能存储或者传输"你好"或者”Hello“之类的字符,那怎么把这些各式各样的人类字符存到计算机上或者在网络上传输呢?这就涉及到一个计算机编码问题。而,要搞懂计算机编码,就得区分三个基本概念,即字符、字符集和字符编码: 【字符】:像字母A, B, C,...,数字1, 2, 3,... ,汉字'你',’好‘,...,标点符号 , 。?等等我们称之为字符。 【字符集】:又称编码表,在...

2021-06-23 19:38:00 352

原创 二进制和文本文件的区别

谈这个问题,我们首先看一下什么样的文件是文本文件,而什么样的文件又是二进制文件。 什么文件是文本文件呢?我们常见的txt, html, javascript, css, java,python等文件都是文本文件,他们都可以通过windows中的记事本或者linux中的vim软件打开。 什么文件又是二进制文件呢?像我们常见的图片文件如bmp、png、gif等,视频文件如MP4, FLV, MOV, AVI, WMV等,音频文件如MP3等,这类文件都需要专用软件打开,比如使用画图软件打开png图

2021-06-20 16:37:32 456

空空如也

空空如也

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

TA关注的人

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