杨斌‘Blog 万事万物像个动态的缺陷系统并不完美,不停的有Bug,只能在不完美中变得更好一点。

Java多线程中的锁

Java 中之所以有这么多锁,根本原因就是多线程。 当多个线程同时访问共享数据时,会产生三个经典问题——原子性、可见性、有序性。锁就是为了解决这些问题而诞生的工具。 下面用生活中的例子 + 代码来分别说明为什么需要锁,以及不同的锁解决什么问题。

杨斌 杨斌 发布于 2026-04-15

Java如何实现多线程

Java 中实现多线程主要有 4 种常见方式

杨斌 杨斌 发布于 2026-04-15

Java中HashMap的原理

一.HashMap的原理 1.HashMap内部结构 HashMap底层就是一个数组,结合链表和红黑树来解决冲突。无论有没有哈希冲突,数组桶里永远只存“指向节点的引用(箭头)”,节点对象本身(包含 key、value、next)存在堆内存中。 // HashMap底层数组 Node<K,V>[] t

杨斌 杨斌 发布于 2026-04-15

SpringSecurity关于使用.antMatchers放行接口不生效问题

原因其实很简单,就是配置的url路径不对,导致路径不匹配,因此没有生效。 由于在配置文件中配置了服务根路径,然后添加到.antMatchers里的路径也包含了context- path。 但实际上Spring

杨斌 杨斌 发布于 2026-04-10

Session和Cookie技术原理

这个问题要搞清楚,本质上是在理解 Web 登录的底层机制。 👉 Cookie 是客户端存储机制 👉 Session 是服务端存储机制 👉 两者是“配合使用”的,而不是对立关系 一、先用一句话理解 👉 Cookie: 浏览器帮你“记东西” 👉 Session: 服务器帮你“记身份”

杨斌 杨斌 发布于 2026-04-09

JWT技术原理

在 Java 项目(比如 Spring Boot + Vue)中使用 JWT(JSON Web Token),本质是用一种“无状态的身份认证机制”来替代传统的 Session 登录。 一、JWT 的好处(为什么越来越多人用) 1️⃣ 无状态(核心优势) 传统登录: 用

杨斌 杨斌 发布于 2026-04-09

SpringBoot项目工具安装及项目搭建

一、开发环境准备 1.1 安装 JDK(必需) Spring Boot 3.x 系列要求 JDK 17 或更高版本,最高可支持到 Java 23。建议安装 JDK 21 LTS(长期支持版本),兼顾稳定性与新特性。 访问 Oracle JDK

杨斌 杨斌 发布于 2026-04-08

Vue3 核心工具安装及项目基础搭建完整版

本文以2026年最新生态为基础,从零开始搭建一个完整的企业级 Vue3 项目,涵盖环境准备、VS Code 插件配置、脚手架工具、路由配置、状态管理、UI 组件库、HTTP 请求封装等核心模块。 核心步骤概览

杨斌 杨斌 发布于 2026-04-08

Vue中package.json文件中含2个scripts命令行

{ "name": "ai-picture-frontend", "version": "0.0.0", "private": true, "type": "module", "scripts": { "dev": "vite", "build": "run-p

杨斌 杨斌 发布于 2026-04-07
上一页 下一页