收藏 / 列表

軟件求生 - 深夜調Bug:那次我被@OneToMany坑到懷疑人生

大家好,我是小米,一個31歲的Java後端開發者。 我發現程序員這行啊,最容易讓人“精神內耗”的不是加班、不是需求改動,而是——被註解支配的恐懼。 有一天,我在項目裏寫了一個看似普通的實體類映射,然後一運行,控制枱瞬間爆紅: com.fasterxml.jackson.databind.JsonMappingException: Infinit

Spring Boot , yyds乾貨盤點 , 遞歸 , 外鍵 , 後端開發 , jpa

老污的貓 - Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and……

問題描述 執行SQL聯表查詢,原始報錯信息 (1267, "Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) for operation '='") 這是由於不同表使用了不一致的字符集導致的衝突 解決方案 修改表或字段的格式至同一結構 使用轉格式命令單獨執行本次S

MySQL

大廠碼農老A - 我帶的外包兄弟放棄大廠轉正,薪資翻倍入職字節

大家好,我是老A 國慶節的時候,收到一位粉絲的私信求助。一來一回聊了半天,我發現了一個很多技術兄弟的通病——我們稱之為「收藏夾式努力​」。水文看不上,只想讓大佬推薦技術寶典,一旦拿到手,焦慮感削弱,寶典就在收藏夾裏吃灰,下了班照樣峽谷開黑。當你想督促他深入研究時,他又會用「他是大佬,我不是,我做不到」來給自己設限,最終陷入「持續焦慮,持續躺平」的惡性循環。 這種惰性,是人之常情。但人和人之間

觀點 , JAVA , 程序員 , 後端 , 前端

悲傷的鴨蛋 - dependencies、dependencyManagement區別

對比項 dependencyManagement dependencies 功能 聲明版本(不引入依賴) 實際引入依賴到項目 作用 統一管理版本,避免衝突 決定項目運行時依賴 生效範圍 當前項目及子項目 僅當前項目 版本控制 子項目默認繼承 可覆蓋父項目版本 總結: dependencyManagement:定規矩(版本),不幹活(不引入)。 dependenc

maven , dependencies , dependency-management

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

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

設計模式 , JAVA , 策略模式

vivo互聯網技術 - FunProxy - 使用 Rust 構建跨平台全鏈路測試抓包代理工具

作者:vivo 互聯網大前端團隊- Song Jiachao 在軟件開發過程中,軟件測試對於保障軟件質量和用户滿意度起着關鍵作用。為最大程度上提升軟件品質,我們積極開展全鏈路測試實踐,打造了用Rust語言開發的自研一站式抓包代理工具FunProxy,基於其跨平台、高性能、易於擴展、安全性高等特性,讓全鏈路抓包和環境代理如絲綢般絲滑。 一、背景介紹 1.1 什麼是全鏈路測試 全鏈路測試就是"

工具 , 效率 , rust , 測試 , 前端

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

跨域是什麼? 跨域問題是瀏覽器的安全機制,即同源策略(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中ReentrantLock的實現原理

ReentrantLock 依賴關係如下圖所示 非公平鎖實現原理 ReentrantLock 默認採用非公平鎖。 // ReentrantLock public ReentrantLock() { sync = new NonfairSync(); } 加鎖流程 ReentrantLock 的 lock 方法通過同步器的 lock 方法實現。 // ReentrantLock publi

JAVA , 併發 , juc , 併發編程

Awbeci - Next.js-Cookie鑑權+續期+退出登錄

前言 之前寫過關於next.js鑑權操作cookie的文章,Next.js-cookie鑑權+續期1和Next.js-cookie鑑權+續期2,最近chatgpt非常火,於是我問它next.js鑑權最佳實踐,下面是它的回答: 設置合理的 cookie 有效期:合理的 cookie 有效期應該根據網站的特點來確定,通常建議將其設置為一定時間內(如 30 分鐘)。 定時刷新 cookie

next.js , cookie

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

我不是碼農 - spring使用@Async註解導致循環依賴問題異常的排查

因為我用到了@async來實現異步操作,在本地跑的時候一直沒有報錯,可是當我打包到服務器啓動的時候卻報了一個BeanCurrentlyInCreationException Bean with name 'xxx' has been injected into other beans [xxx2] in its raw version as part of a circular reference

spring , async , aop , springboot , JAVA

江南一點雨 - JWT 簽名用對稱加密還是非對稱加密?

一 概念梳理 對稱加密和非對稱加密是兩種基本的加密方法,它們在現代密碼學中扮演着核心角色,用於保護數據的安全和隱私。 1.1 對稱加密(Symmetric Encryption) 對稱加密是指加密和解密使用同一個密鑰的過程。這意味着發送方和接收方都必須知道並使用這個共享的密鑰來對信息進行加密和解密。這種方法的優點在於加密和解密速度快,效率高,適合處理大量數據。但是,安全分發密鑰成為一個挑戰,因為如

spring , JAVA , Jwt

Java架構師 - 吹爆Alibaba自研的Spring全能筆記,建議人手一份!

Spring 這個技術棧,想必大家都知道,這玩意麪試必考工作必用,對於每位 Java 程序員來説都是至關重要的;俗話説 Java 開發不學習 Spring 就像士兵上戰場不帶槍,我認為這個比喻很形象。Spring 幾乎佔據了 Java web 的半壁江山,其重要性不言而喻,它跟它後面誕生的一系列解決方案被我們親切的稱為“Spring 全家桶”。 在當下毫不誇張地説,若是不會 Spring 就去面試

spring , spring-mvc , springboot , JAVA , 程序員

wx690f565d7bc78 - 從 BPMN 到 Flowable

BPMN 是業務流程建模與標註的標準,Flowable 是基於 BPMN 標準的開源流程引擎,核心是將 BPMN 設計的流程模型落地為可執行的業務流程。 核心關聯:BPMN 是標準,Flowable 是落地工具 BPMN 定義流程的可視化規範(如流程圖元素、網關、任務類型等),解決 “流程怎麼畫” 的問題。 Flowable 支持 BPMN 2.0

業務流程 , MySQL , 可執行 , 流程模型 , 數據庫

呀哈哈kk - 【詳解】Kali安裝BCM43142802.11b/g/nLinux驅動

Kali安裝BCM43142802.11b/g/n Linux驅動 在使用Kali Linux時,有時會遇到無線網卡驅動不兼容的問題。本文將詳細介紹如何在Kali Linux上安裝Broadcom BCM43142 802.11b/g/n的Linux驅動。 環境準備 操作系統:Kali Linux 2023.1 硬件:帶有BCM43142無線網

驅動程序 , 加載 , 無線網卡 , 後端開發 , JAVA

清醒的人最荒唐 - SpringBoot實現自定義路由覆蓋

背景 公司最近有一個項目二期需要對一些功能進行改造,涉及部分框架內置業務接口個性化定製,兼容老接口功能並且增加一部分新的數據返回,由於前端調用這些接口分佈較多且較為零碎,修改測試成本較大,所以打算在框架層面提供路由覆蓋功能,加快項目進度減少無技術含量的修改帶來的系統風險 設計 提供自定義註解指定需要覆蓋的路由及新路由地址 系統啓動時掃描所有註解

系統啓動 , List , 自定義 , 後端開發 , JAVA

資深程序設計 - 基於大數據的信貸風險評估的數據可視化分析與預測系統

1 研究背景 在現代金融市場中,信貸業務作為金融機構的核心業務之一,對於促進經濟增長、推動企業發展以及滿足個人資金需求等方面發揮着至關重要的作用。信貸業務的快速發展也伴隨着信貸風險的不斷積累。信貸風險主要包括信用風險、市場風險和操作風險等,其中信用風險尤為突出。信用風險是指借款人因各種原因未能按時足額償還貸款本息,從而給金融機構帶來損失的可能性。隨着全球經濟形勢的複雜多變、

機器學習 , 信貸分析 , yyds乾貨盤點 , 數據 , 數據可視化 , 後端開發 , Python

g天命風流 - 併發編程之Java 對象頭的詳細解析

Java 對象頭 以 32 位虛擬機為例 普通對象 |--------------------------------------------------------------| | Object Header (64 bits) | |------------------------------------|-------------------------|

word , 項目代碼 , JAVA , 前端開發 , Javascript

Turbo_K - mysql的查詢優化器如何選擇執行計劃

MySQL 查詢優化器(Query Optimizer)負責決定如何執行一個查詢,它通過選擇最優的 執行計劃 來實現查詢的高效執行。查詢優化器的目標是根據查詢的複雜性、表的大小、索引的可用性等因素選擇最優的執行路徑。下面將詳細介紹 MySQL 查詢優化器是如何選擇執行計劃的。 1. 執行計劃概述 執行計劃 是 MySQL 查詢優化器選擇的一系列操作步驟,指明如何掃描表

MySQL , 執行計劃 , 查詢優化 , 後端開發 , JAVA

自由的瘋 - 《分佈式 + 國產數據庫 + Docker:技術選型避坑指南》(十三)

一、為什麼需要自定義限流?基礎限流的侷限性 在第六篇基礎限流中,我們配置了 “GET:/user/get/{id}接口 QPS=20” 的規則,但實際業務場景存在更多精細化需求: 場景 1:限制單個用户(如 user_id=100)每秒最多調用 3 次訂單創建接口,避免惡意刷單; 場景 2:限制單個 IP(如 192.168.1.10)每秒最多訪問

限流 , yyds乾貨盤點 , ip , 自定義 , 後端開發 , JAVA