收藏 / 列表

老污的貓 - Java 常用排序

示例數據結構 public class Item { private Integer id; private Integer sort; private Date createTime; } // 排序數組 ListItem list = new ArrayList(); 根據創建時間逆序 list.sort(Comparator.comparing(Item::get

JAVA

大廠碼農老A - 凌晨零點,一個TODO,差點把我們整個部門抬走

那晚杭州的悶熱,至今記憶猶新。 2021年,我剛來到杭州這座“卷城”,入職了一家夢想中的互聯網大廠。作為一名電商新人,我一頭扎進了促銷和會場的研發中。 那晚,我們正為一個S級的“會員閃促”活動做最後的護航,它將在零點準時生效。作戰室裏燈火通明,所有人都盯着大盤,期待着活動上線後,GMV曲線能像火箭一樣發射。 然而,我們等來的不是火箭,而是雪崩。 剛過0點,登登登登… 告警羣裏的消息開始瘋狂刷屏,聲

springboot , JAVA , 故障 , 後端 , 前端

悲傷的鴨蛋 - Mybatis常見運行報錯(持續更新...)

報錯一: Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1 解決辦法: setting - Editor - File Encodings,編碼方式都選擇UTF-8 報錯二: Cause: java.sql

MySQL , JAVA , Mybatis , Web

打盹的猴子 - 策略模式(Strategy Pattern)深度解析教程

一、模式定義 策略模式屬於行為型設計模式,通過定義算法族並將其封裝為獨立的策略類,使得算法可以動態切換且與使用它的客户端解耦。該模式通過組合替代繼承,符合開閉原則(對擴展開放,對修改關閉)。 二、核心角色 Strategy(策略接口) 定義所有支持的算法的公共接口 ConcreteStrategy(具體策略) 實現策略接口的具體算法

設計模式 , JAVA , 策略模式

牛肉燒烤屋 - 計算機網絡——常見的跨域方案

跨域是什麼? 跨域問題是瀏覽器的安全機制,即同源策略(Same-origin policy) 限制不同源之間的交互,從而保證資源的安全 同源策略限制內容 Cookie、LocalStorage、IndexedDB 等存儲性內容只有同源才能訪問 AJAX 請求發送後,響應內容被瀏覽器攔截了 DOM 允許跨域加載的資源 img src=XXX link href=XXX scri

JAVA , 計算機網絡 , 後端

seazhan - 【Java多線程】斷點續傳 如何使用Java多線程下載網絡文件

如何使用Java多線程下載網絡文件,並實現斷點續傳 在現代網絡應用中,多線程下載是一種常見的技術,它可以顯著提高下載速度並提供更好的用户體驗。本篇文章將介紹如何使用Java實現多線程下載,並結合項目中的代碼作為示例進行講解。 1. 多線程下載的基本原理 多線程下載的基本思想是將一個文件分成多個部分,每個部分由一個線程獨立下載,最後將這些部分合併成完整的文件。這樣可以充分利用帶寬和計算資源,提高下載

多線程 , JAVA

王中陽講編程 - 訂單支付後庫存不扣減,如何用RabbitMQ來優化?

上週在Review學員代碼的時候,我們發現了一個很基礎但很重要的問題:支付回調流程中缺少了庫存扣減環節。這類問題雖然基礎,但如果直接進入生產環境,可能導致庫存的數據和實際銷售的情況不一致,出現超賣的情況。能夠及時發現這種問題,這就是Review代碼的重要性。 先看這段有問題的代碼: // 原來的支付回調邏輯(問題代碼) func PaymentCallback(ctx context.Contex

go , 後端

字節幺零二四 - 源碼解讀 | Java中ReentrantReadWriteLock的實現原理

本文將介紹Java中ReentrantReadWriteLock的實現原理,從JDK源碼層面講解讀寫鎖的加鎖、釋放鎖的流程,最後對流程進行總結。 讀寫鎖概述 讀寫鎖 ReentrantReadWriteLock 的依賴關係如下圖所示。 讀寫鎖的基本使用如下 ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); Reentrant

源碼 , JAVA , juc , 併發編程

Awbeci - SpringCloud-SpringSecurity+Oauth2:搭建資源服務

前言 之前寫過使用springsecurity搭建認證服務SpringSecurity+Oauth2:密碼授權模式獲取Token(MongoDB+JWT),這篇則寫關於如何搭建資源服務,只有驗證通過的token才能訪問。 操作 1、配置Pom.xml引用spring-cloud-security和oauth2的jar包 2、配置主類@EnableResourceServer註解,開啓資源服務

oauth2.0 , springsecurity

lindsay_bubble - Leetcode 84_柱狀圖中最大的矩形

給定 n 個非負整數,用來表示柱狀圖中各個柱子的高度。每個柱子彼此相鄰,且寬度為 1 。 求在該柱狀圖中,能夠勾勒出來的矩形的最大面積。 想法:感覺這個題考的是數學,是邏輯。 怎麼找矩形呢?就是當前位置的最高點,向左和向右畫矩形,找他比他矮的點left, right,就停止。 高度就是height[i] 寬度就是(right-left+1)-2,因為找到的那兩個點是不能算進

leetcode , , JAVA

wasdquiop - centos7 安裝 nginx

centos7 安裝 nginx 安裝包 鏈接: https://pan.baidu.com/s/1kpAYYX_yy-vXX-1vsCPhoA 提取碼: qrtb 上傳 新創建usr/local/nginx文件夾,放到文件夾下 解壓 tar -zxvf nginx-1.9.9.tar.gz 安裝編譯環境 安裝gcc,源碼編譯依賴 gcc 環境 yum -y install gcc-c+

centos7 , Linux , JAVA , Nginx

Enaium - Gradle極簡入門

首發於Enaium的個人博客 什麼是 Gradle Gradle是一個基於Apache Ant和Apache Maven概念的項目自動化構建工具。它使用一種基於Groovy的特定領域語言(DSL)來聲明項目設置,而不是傳統的XML。Gradle構建腳本是用Groovy編寫的,也可以使用Kotlin編寫,兩者都是基於JVM的語言。 安裝 Gradle 在開始之前,想必大家已經學會了Java或者Ko

構建工具 , Kotlin , JAVA , gradle

Java陳序員 - 像老鄉雞那樣做飯!

大家好,我是 Java陳序員。 前段時間西貝羅永浩事件鬧得沸沸揚揚,西貝的做法可謂是激起廣大網友的不滿。 想不到的是,這場爭論的最後贏家居然是老鄉雞。與西貝相反的是,老鄉雞預製菜完全公開透明,不遮遮掩掩,而且價格十分親民。 與此相對應的,最近在 Github 有個項目 —— CookLikeHOC(像老鄉雞那樣做飯),十分爆火,短短的時間內,斬獲幾千 Star! 關注微信公眾號:【Java陳序

vue.js , github , node.js

wayn - Spring Security權限控制框架使用指南

在常用的後台管理系統中,通常都會有訪問權限控制的需求,用於限制不同人員對於接口的訪問能力,如果用户不具備指定的權限,則不能訪問某些接口。 本文將用 waynboot-mall 項目舉例,給大家介紹常見後管系統如何引入權限控制框架 Spring Security。大綱如下, 一、什麼是 Spring Security Spring Security 是一個基於 Spring 框架的開源項目,旨在為

權限控制 , springsecurity , springboot , JAVA , spring-security

用户bPbhIAe - Java 泛型詳細解析

泛型的定義 泛型類的定義 下面定義了一個泛型類 Pair,它有一個泛型參數 T。 public class PairT { private T start; private T end; } 實際使用的時候就可以給這個 T 指定任何實際的類型,比如下面所示,就指定了實際類型為 LocalDate,泛型給了我們一個錯覺就是通過個這個模板類 PairT,我們可以在實際使用的時候動態的派

泛型 , JAVA , 類型轉換

程序員波特 - Java中鎖的解決方案

前言 在上一篇文章中,介紹了什麼是鎖,以及鎖的使用場景,本文繼續給大家繼續做深入的介紹,介紹JAVA為我們提供的不同種類的鎖。 JAVA為我們提供了種類豐富的鎖,每種鎖都有不同的特性,鎖的使用場景也各不相同。由於篇幅有限,在這裏只給大家介紹比較常用的幾種鎖。我會通過鎖的定義,核心代碼剖析,以及使用場景來給大家介紹JAVA中主流的幾種鎖。 樂觀鎖 與 悲觀鎖 樂觀鎖與悲觀鎖應該是每個開發人員最先接觸

lock , , JAVA , synchronized

mob64ca13fe62db - 【Python】永久使用國內pip鏡像源

Python pip使用簡介和國內鏡像下載 什麼是pip pip 是 Python 的官方包管理工具,用於安裝和管理第三方庫(也稱為“包”或“模塊”)。自 Python 3.4 起,pip 默認隨 Python解釋器安裝,通過命令行使用 pip 命令進行包的安裝、卸載、升級等操作。 通過 pip --version 檢查pip是否安裝。 pip

鏡像源 , 後端開發 , 包名 , Python

半夏微光zhang - 註解

1.1 註釋和註解的區別 共同點:都可以對程序進行解釋説明。 不同點:註釋,是給程序員看的。只在Java中有效,在class文件中不存在註釋的。 當編譯之後,會進行註釋擦除。 註解,是給虛擬機看的。當虛擬機看到註解之後,就知道要做什麼事情了。 1.2 如何使用註解 在以前看過註解@Override。 當子類重寫父類方法的時候,在重寫的方法

自定義註解 , Test , 後端開發 , JAVA , ide

mb61c46a7ab1eee - 實用指南:告別“手繪序列幀”:Substance Designer中的程序化VFX材質工作流

摘要 本文旨在解決廣大遊戲VFX(視覺特效)美術師在創作特效序列幀時,長期依賴“逐幀手繪”,從而導致的“工作量巨大、修改困難、風格不穩定”的核心痛點。我們將深入探索Adobe Substance 3D Designer (SD) 的程序化、非破壞性節點系統,構建一套從零開始、可隨時“反悔”和“迭代”的動態特效材質生成工作流。通過本指南,你將學會如何利用噪聲、扭曲和時間變量$

時間軸 , 3d , 序列幀 , 前端開發 , Javascript

CodePulse代碼脈搏 - 智能練習生成與進度追蹤

基於AI編程導師,添加智能練習生成和個性化學習路徑功能。 1. 智能練習生成器 # exercise_generator.py import random from typing import List, Dict from enum import Enum class Difficulty(Enum): BEGINNER = "beginner"

List , 後端開發 , JAVA , ci , Json

Zeran - Mysql連接的原理

表結構 t1 CREATE TABLE `t1` ( `m1` int(11) DEFAULT NULL, `n1` char(1) COLLATE utf8mb4_bin DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; INSERT INTO `t1`(`m1`, `n1`) VALUE

mysql索引 , mysql優化 , SQL

虎斑嘟嘟 - 多模態對齊的表示學習:統一對比散度框架詳解

多模態對齊的表示學習:統一對比散度框架詳解 1. 引言:多模態對齊的核心挑戰 多模態表示學習作為人工智能領域的前沿方向,旨在使機器能夠像人類一樣理解和處理文本、圖像、音頻等不同模態的信息。其核心挑戰在於如何構建一個共享的語義空間,使得異構數據在這個空間中可以相互對齊和理解。 不同模態數據之間存在三大根本矛盾:符號系統的異構性(自然語言基於離散符號系統,而視覺、聽

yyds乾貨盤點 , 錨點 , 相似度 , 後端開發 , JAVA , 模態

Turbo_K - ThreadLocal有什麼缺點?

ThreadLocal 是 Java 中一個用於為每個線程提供獨立變量副本的類,它允許每個線程都能獨立地訪問和修改變量,避免了多線程間的競爭和同步問題。它是通過在每個線程中維護一個 線程局部變量 來實現的,通常用於線程間的數據隔離。 然而,ThreadLocal 並不是完美的,它有一些缺點和潛在的問題,特別是在多線程和資源管理方面。以下是 ThreadLocal 的一些主要

線程池 , 後端開發 , 多線程 , JAVA , 解決方案

自由的瘋 - 《單元測試與Mock:保證代碼質量(十四)》

單元測試是確保代碼質量的核心手段,通過隔離測試目標代碼(System Under Test, SUT),驗證其邏輯正確性。結合Mock框架(如Moq)可以模擬外部依賴,使測試更可控、更高效。 1. xUnit/NUnit基礎:單元測試框架 1.1 xUnit與NUnit對比

List , Test , Stack , yyds乾貨盤點 , c++ , 後端開發 , c